1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(TIỂU LUẬN) TIỂU LUẬN tên học phần cảm biến và xử lý tín hiệu đo dùng encoder 100 xung 2 kênh đo tốc độ quay và xác định chiều quay

20 29 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 1,41 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH BÀI TIỂU LUẬN Tên học phần: Cảm biến xử lý tín hiệu đo Kỳ thi học kỳ đợt B năm học 2020 -2021 Giảng viên hướng dẫn: Th.S Trương Thu Hiền Sinh viên thực hiện MSSV Nguyễn Phát Đạt 2011782281 Nguyễn Huỳnh Tuấn Kiệệ̣t 2080400054 Nguyễn Đăng Mẫn 2087800059 Hồ Trọng Phú 2087800071 Lớp 20DDCA1 Ngành Kỹ thuật điệệ̣n – điện tư Khoa/Việệ̣n Việệ̣n kỹ thuật Tp.HCM, ngày 04 tháng 01 năm 2022 i ĐỀ BÀI Đề số 11 : Dùng encoder 100 xung kênh đo tốc độ quay xác định chiều quay 1 BAI LAM Nhiệm vụ từng viên nhóm Nguyên Huynh Tuân Kiệt Nguyên Phat Đat Nguyên Đăng Mân Hô Trong Phu Mục lục Phần 1: Giới thiệu tổng quan (về cảm biến: phát gì, hoạt động- TL1) mạch(TL1) Phần Sơ đồ khối, giới thiệu linh kiện mạch (datasheet, thông số kỹ thuật quan trọng cảm biến cụ thể linh kiện)… Phần 3: Đấu nối dây(các chân), mô mạch (chạy, nhìn được) Phần 4: Nguyên lý hoạt động, lưu đô thuât toan Phần 5: Chạy thử nghiệm (phân tích đánh giá kết quả) Phần 6: Kết luận Tài liệu tham khảo Mục lục Phần 1: Giới thiệu tổng quan Phần 2: Sơ đồ khối - Giới thiệu linh kiện mạch 2.1.Sơ đồ khốố́i 2.2.Giới thiệệ̣u linh kiệệ̣n mạch 2.2.1 Encoder 100 xung kênh AB 2.2.2 Arduino UNO R3 SMD 2.2.3 Biếố́n trở 2.2.4 LCD 1602 2.2.5 Motor mini 12V Phần 3: Đấu nối dây(các chân), mơ mạch (chạy, nhìn được) Phần 4: Nguyên lý hoạt động, lưu đô thuật toan 4.1.Nguyên lý hoat động Phần 5: Chạy thử nghiệm (phân tích đánh giá kết quả) 5.1.Chay thư nghiệm Phần 6: Kết luậậ̣n Tài liệu tham khảo Phần 1: Giới thiệu tổng quan Encoder 100 xung kênh Encoder hay gọi là: Bộệ̣ mã hóố́a quay bộệ̣ mã hóố́a trụệ̣c, mợệ̣t thiếố́t bị điệệ̣n chuyển đổi vị tríố́ góố́c chuyển đợệ̣ng trụệ̣c trụệ̣c thành tíố́n hiệệ̣u đầầ̀u analog kỹ thuật sốố́ Encoder dùng để phát hiệệ̣n vị tríố́, hướng di chuyển, tốố́c đợệ̣… đợệ̣ng cách đếố́m sốố́ vịng quay trụệ̣c Hoạt động Khi đĩa quay quanh trụệ̣c, đĩa cóố́ rãnh để tíố́n hiệệ̣u quang chiếố́u qua (Led) Chỗ cóố́ rãnh ánh sáng xuyên qua được, chỗ không cóố́ rãnh ánh sáng không xuyên qua Với tíố́n hiệệ̣u cóố́/khơng người ta ghi nhận đèn Led cóố́ chiếố́u qua hay không Sốố́ xung Encoder quy ước sốố́ lầầ̀n ánh sáng chiếố́u qua khe Víố́ dụệ̣ đĩa cóố́ 100 khe vịng quay, encoder đếố́m 100 tíố́n hiệệ̣u Cảm biếố́n thu ánh sáng bật tắt liên tụệ̣c, từầ̀ đóố́: Tạo tíố́n hiệệ̣u dạng xung vng Tíố́n hiệệ̣u dạng xung truyền bợệ̣ xưử̉ lýố́ trung tâm để đo đạc, xác định vị tríố́/ tốố́c độệ̣ độệ̣ng 4 Phần 2: Sơ đồ khối - Giới thiệu linh kiện mạch 2.1.Sơ đồ khối Khốố́i nguồn Khốố́i cảm biếố́n Khốố́i độệ̣ng lựệ̣c Khốố́i điều khiển Khốố́i hiển thị (LCD) Khốố́i nguồn Pin 2.2 Giới thiệu linh kiện mạch 2.2.1 Encoder 100 xung kênh AB Hinh 2.1: Encoder 100 xung kênh Thông số kỹ thuậậ̣t Điệệ̣n áp sưử̉ dụệ̣ng: 3.3~5VDC (nên mắc nốố́i tiếố́p qua trở 120 Ohm để đảm bảo an toàn) Sốố́ kênh Encoder: kênh A, B (2 chanels) Dạng tíố́n hiệệ̣u: cựệ̣c thu hở NPN cầầ̀n kéo trở 10k lên VCC để tạo thành mức cao Sốố́ vạch xung đĩa Encoder: 100 vạch Đường kíố́nh đĩa Encoder: 22mm Đường kíố́nh lỗ đĩa Encoder: 3.5mm Độệ̣ dày đĩa Encoder: 0.3mm Chất liệệ̣u đĩa Encoder: Thép Sơ đồ kết nối Dây đỏử̉ (RED): VCC 3.3~5VDC (nên mắc nốố́i tiếố́p qua trở 120 Ohm để đảm bảo an tồn) Dây đen (BLACK): GND 0VDC Hai dây cịn lại kênh A kênh B tíố́n hiệệ̣u trả dạng cựệ̣c thu hở NPN cầầ̀n kéo trở 10k lên VCC để tạo thành mức cao Hinh 2.2: Sơ đô chân Encoder 2.2.2 Arduino UNO R3 SMD Hinh 2.3: Arduino UNO R3 SMD Thông số kỹ thuậậ̣t: Điệệ̣n áp hoạt độệ̣ng: 5V Điệệ̣n áp đầầ̀u vào (khuyên dùng): 7-12V Điệệ̣n áp đầầ̀u vào (giới hạn): 6-20V Chân Digital I/O: 14 (Với chân PWM output) Chân PWM Digital I/O: Chân đầầ̀u vào Analog: Dòng sưử̉ dụệ̣ng I/O Pin: 20 mA Dòng sưử̉ dụệ̣ng: 3.3V Pin: 50 mA Bộệ̣ nhớ Flash: 32 KB (ATmega328P) với 0.5KB dùng bootloader SRAM: KB (ATmega328P) EEPROM: KB (ATmega328P) Clock Speed: 16 MHz LED_BUILTIN: 13 Chiều dài: 68.6 mm Chiều rộệ̣ng: 53.4 mm Trọng lượng: 20 g Sơ đồ chân: Hinh 2.4: Sơ đô chân UNO R3 Đèn LED: Arduino Uno kèm với đèn LED tíố́ch hợp kếố́t nốố́i thông qua chân 13 Cung cấp mức logic HIGH tương ứng ON LOW tương ứng tắt Vin: Đây điệệ̣n áp đầầ̀u vào cung cấp cho board mạch Arduino Khác với 5V cung cấp qua cổng USB Pin sưử̉ dụệ̣ng để cung cấp điệệ̣n áp tồn mạch thơng qua jack nguồn, thơng thường khoảng 7-12VDC 5V: Chân 5V sưử̉ dụệ̣ng để cung cấp điệệ̣n áp đầầ̀u Arduino cấp nguồn ba cách đóố́ USB, chân Vin bo mạch giắc nguồn DC USB: Hỗ trợ điệệ̣n áp khoảng 5V Vin Power Jack hỗ trợ dải điệệ̣n áp khoảng từầ̀ 7V đếố́n 20V GND: Chân mass chung cho toàn mạch Arduino Reset: Chân reset để thiếố́t lập lại ban đầầ̀u IOREF: Chân hữu íố́ch để cung cấp tham chiếố́u điệệ̣n áp cho Arduino PWM: PWM cung cấp chân 3,5,6,9,10, 11 Các chân cấu hình để cung cấp PWM đầầ̀u bit SPI: Chân gọi giao diệệ̣n ngoại vi nốố́i tiếố́p Các chân 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) cung cấp liên lạc SPI với sựệ̣ trợ giúp thư việệ̣n SPI AREF: Chân gọi tham chiếố́u tương tựệ̣, sưử̉ dụệ̣ng để cung cấp điệệ̣n áp tham chiếố́u cho đầầ̀u vào tương tựệ̣ TWI: Chân Giao tiếố́p TWI truy cập thông qua thư việệ̣n dây Chân A4 A5 sưử̉ dụệ̣ng cho mụệ̣c đíố́ch Serial Communication: Giao tiếố́p nốố́i tiếố́p thựệ̣c hiệệ̣n thông qua hai chân (Rx) (Tx) Rx: Chân sưử̉ dụệ̣ng để nhận liệệ̣u chân Tx sưử̉ dụệ̣ng để truyền liệệ̣u External Interrupts (Ngắt ngoài): Chân sưử̉ dụệ̣ng để cung cấp ngắt 2.2.3 Biến trở Hinh 2.4: Biên trơ Thông số kỹ thuậậ̣t: Loại: Triếố́t áp đôi Sốố́ chân: chân chia chân trên, chân Cóố́ thể thay đổi giá trị khoảng rộệ̣ng từầ̀ ohm - 10k ohm Trọng lượng triếố́t áp đôi: 15g Sơ đồ chân: Hinh 2.5: Sơ đô chân biên trơ 2.2.4 LCD 1602 Hinh 2.6: LCD 1602 Thông số kỹ thuậậ̣t: Chữ trắng xanh dương Điệệ̣n áp hoạt độệ̣ng: +5.0VDC 10 Đèn LED màu trắng Kýố́ tựệ̣ 5x8 dot IC điều khiển HD44780 tương đương Giao tiếố́p or bit Kíố́ch thước: Module: 80.0x36.0x13.5mm Kíố́ch thước vùng nhìn: 66.0x16.0mm Sơ đồ chân: Hinh 2.7: Sơ đô chân LCD 1602 1: VSS 2: VDD5V 3: V0, 10K 4: RS 5: R/W 6: E 7~14: D0~D7 15: A 16: K 11 2.2.5 Motor mini 12V Hinh 2.8: Motor mini 12V Thơng số kỹ tḥậ̣t: Đường kíố́nh ngồi đợệ̣ng cơ: 24,3mm Chiều cao: 30,8mm Đường kíố́nh trụệ̣c: 2.0mm Chiều dài trụệ̣c: 9,5mm Lỗ víố́t: M Trọng lượng: 47,5 g Điệệ̣n áp: 6V, Dịng 0.32A Tốố́c đợệ̣: 16500 vịng / phút Điệệ̣n áp: 11,1V, Dịng 0.46A Tốố́c đợệ̣: 31200 vịng / phút Điệệ̣n áp: 12 V, Dịng 0.51A Tốố́c đợệ̣: 33600 vòng / phút 12 Phần 3: Đấu nối dây(các chân), mơ mạch (chạy, nhìn được) 13 Phần 4: Nguyên lý hoạt động, lưu đô thuật toan 4.1.Nguyên ly hoat đông: - Câp nguôn: Khi câp nguôn cho Arduino băng dây cap USB, Arduino hoat động chân 5V – GND cua Arduino đươc nối vao cực + - cua Test Board đê câp nguôn cho Test Board - Đo tốc độ: Khi cam biến Encoder hoat động đa đươc đâu dây nguôn cua Encoder (Dây đỏ 5V, Dây đen GND) vao Test Board, đơng thơi nhân tín hiệu băng chân A hoăc B đươc đâu vao chân số hoăc cua Arduino Khi cam biến băt đầu đo dựa anh sang phat chiếu vao từng khe ranh cua đia xung vao bộ thu tao xung vuông Đông thơi đê thực hiện đươc đo tốc độ ta cần viết code lâp trinh cho Arduino va Encoder đê có thê tính toan đươc tốc đợ đia xung quay va Encoder nhân tín hiệu bao vê may chu (vi Encoder chi có thê nhân biết tín hiệu xung khơng thê tính toan nên ta cần lâp trinh cho nó) - Xac đinh chiêu quay: Xac đinh chiêu quay dựa tín hiệu cua dây tín hiệu A va B Khi đèn LED phát tíố́n hiệệ̣u pha A B cóố́ nhiệệ̣m vụệ̣ thu tíố́n hiệệ̣u A B từầ̀ đóố́ tạo xung vng bật tắt theo mợệ̣t trình tựệ̣ Từầ̀ sựệ̣ chênh lệệ̣ch tầầ̀n sốố́ xung A B mà cóố́ thể phân biệệ̣t chiều quay độệ̣ng Vd: Khi pha A cóố́ chu kỳ trước pha B Ta quy ước đóố́ chiều thuận ngược lại Đơng thơi đê tín hiệu đươc xac đinh va hiện thi rõ ta cũng cần lâp trinh code cho chung tương tự lâp trinh code tốc độ - Hiên thi kết qua: Ở mach sư dụng LCD 1602 đê hiện thi kết qua tra vê băng cach đâu cac chân tín hiện va ngn cua LCD vao Arduino va biến trơ (Mach không dung module I2C) - Motor DC: Đươc găn đia xung va đâu nguôn đê thực hiện việc xoay đia xung tao tín hiệu cho Encoder đươc găn đo 14 Phần 5: Chạy thử nghiệm (phân tích đánh giá kết quả) 5.1 Chay thư nghiêm: Code Arduino: #include LiquidCrystal lcd(5,6,7,8,9,10,11); volatile long temp,counter = 0; //This variable will increase or decrease depending on the rotation of encoder const int interrupt0 = 0; //interrupt0 (pin2) const int interrupt1 = 1; //interrupt1 (pin3) const int phase_a=2; const int phase_b=3; int dem = 0; float rpm = 0; float tocdo = 0; int timecho = 1000; unsigned long thoigian; unsigned long hientai; // -// void setup() { Serial.begin (9600); lcd.begin(16,2); lcd.print("Direction: "); lcd.setCursor(0,1); lcd.print("M/s: "); pinMode(phase_a, INPUT_PULLUP); // internal pullup input pin pinMode(phase_b, INPUT_PULLUP); // internal pullup input pin //Setting up interrupt //A rising pulse from encodenren activated ai0() AttachInterrupt is DigitalPin nr on moust Arduino attachInterrupt(interrupt0, ai0, RISING); //B rising pulse from encodenren activated ai1() AttachInterrupt is DigitalPin nr on moust Arduino attachInterrupt(interrupt1, ai1, RISING); } // -// void loop() 15 { / Send the value of counter if(counter != temp) {temp = counter;} /Speed calculation thoigian = millis(); if(thoigian - hientai >= timecho) //millis thay delay { hientai = thoigian; rpm = (dem/100)*60; /* * Đĩa encoder cóố́ 100 xung, đo 6000 xung/s * lấy 6000/100 = vòng/s * ta được: 6*60 = sốố́ vòng quay / phút (RPM) */ tocdo = float(dem/100)*float(0.022*3.14); // m/s /* * dem/100 sốố́ vòng/s * 0.022 đường kíố́nh vịng trịn (đơn vị: m) * 3.14 sốố́ pi */ Serial.print(" "); Serial.print("Direction: "); Serial.println (counter); Serial.print(" "); Serial.print("Sốố́ xung/s: "); Serial.println(dem); dem = 0; Serial.print(" "); Serial.print("RPM: "); Serial.print(rpm); Serial.print(" "); Serial.print("M/s: "); Serial.println(tocdo); } lcd.setCursor(11,0); lcd.print(counter); lcd.setCursor(5,1); lcd.print(tocdo); } // -// void ai0() { dem++;//đếố́m xung / ai0 is activated if DigitalPin nr is going from LOW to HIGH / Check pin to determine the direction if(digitalRead(phase_b) == LOW) { counter++; } else { 16 counter ; } } void ai1() { dem++;//đếố́m xung / ai0 is activated if DigitalPin nr is going from LOW to HIGH /Check with pin to determine the direction if(digitalRead(phase_a) == LOW) { counter ; } else { counter++; } } Video mô phong: 17 Phân tich va đanh gia kêt qua: - Mach đơn gian chưa đap ưng đu yêu cầu, chưa bắt mắt - Mạch chạy chưa hoan chinh Phần 6: Kết luậậ̣n - Nếố́u mạch ứng dụệ̣ng phát triển tốố́i ưu cóố́ thể ứng dụệ̣ng vào nhiều lĩnh vựệ̣c như: Trong ngành công nghiệệ̣p ô tô, encoder ứng dụệ̣ng việệ̣c sản xuất cảm biếố́n chuyển độệ̣ng học Cóố́ khả kiểm sốt tốố́c đợệ̣ Trong y tếố́, bợệ̣ mã hố encoder ứng dụệ̣ng máy quét y tếố́ Không cịn cóố́ chức điều khiển chuyển đợệ̣ng kíố́nh hiển vi nano thiếố́t bị tựệ̣ độệ̣ng bơm phân phốố́i, … 18 Tài liệu tham khảo https://www.sendo.vn/bo-5-bien-tro-volum-triet-ap-doi-10k-6-chan10650659.html? utm_campaign=9_at_1328&traffic_id=ZR7ECpY5zFfHTfp5mpuCn02l4keVW wgOQGqIuStU8m3XYVDO&utm_medium=affiliate&utm_source=accesstrade 2&aff_sid=ZR7ECpY5zFfHTfp5mpuCn02l4keVWwgOQGqIuStU8m3XYVDO &atnct1=98f13708210194c475687be6106a3b84&atnct2=ZR7ECpY5zFfHTfp5 mpuCn02l4keVWwgOQGqIuStU8m3XYVDO&atnct3=3iK3m0003jy00010w https://www.thegioiic.com/products/lcd-1602-nen-xanh-duong-chu-trang-5v https://www.sendo.vn/dong-co-motor-mo-to-mini-370-toc-do-cao-6v-12v-cucmanh-33600rpm-19800000.html? source_block_id=feed&source_page_id=search&source_info=desktop2_60_164 0594058763_4321c486-b786-4bdd-8c94-d9286ed7a4f5_-1_cateLvl2_0_5_23_1 https://hshop.vn/products/module-encoder-100xung https://nshopvn.com/product/arduino-uno-r3-smd-chip-dan-kem-cap/ ... - Giới thiệu linh kiện mạch 2. 1.Sơ đồ khốố́i 2. 2.Giới thiệệ̣u linh kiệệ̣n mạch 2. 2.1 Encoder 100 xung kênh AB 2. 2 .2 Arduino UNO R3 SMD 2. 2.3 Biếố́n... Khốố́i cảm biếố́n Khốố́i độệ̣ng lựệ̣c Khốố́i điều khiển Khốố́i hiển thị (LCD) Khốố́i nguồn Pin 2. 2 Giới thiệu linh kiện mạch 2. 2.1 Encoder 100 xung kênh AB Hinh 2. 1: Encoder 100 xung kênh Thông... số 11 : Dùng encoder 100 xung kênh đo tốc độ quay xác định chiều quay 1 BAI LAM Nhiệm vụ từng viên nhóm Nguyên Huynh Tuân Kiệt Nguyên Phat Đat Nguyên Đăng Mân Hô Trong Phu Mục lục Phần 1:

Ngày đăng: 16/12/2022, 14:56

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w