Một số chuẩn kết nối

Một phần của tài liệu Thiết kế và thi công mô hình xe robot dò tìm kim loại điều khiển bằng điện thoại (Trang 37)

Tuy nói wifi tương tự như sóng vô tuyến truyền hình, radio hay điện thoại nhưng nó vẫn khác các loại sóng kia ở mức độ tần số hoạt động.

Sóng wifi truyền nhận dữ liệu ở tần số 2,5Ghz đến 5Ghz. Tần số cao này cho phép nó mang nhiều dữ liệu hơn nhưng phạm vi truyền của nó bị giới hạn, còn các loại sóng khác, tuy tần số thấp nhưng có thể truyền đi được rất xa.

Kết nối wifi sử dụng chuẩn kết nối 802.11 trong thư viện IEEE (Institute of Electrical and Electronics Engineers), chuẩn này bao gồm 4 chuẩn nhỏ a/b/g/n:

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 20

Hình 2.13. Các chuẩn kết nối Wifi.

 Chuẩn wifi đầu tiên 802.11: năm 1997, IEEE đã giới thiệu chuẩn đầu tiên này cho WLAN. Tuy nhiên, 802.11 chỉ hỗ trợ cho băng tần mạng cực đại lên đến 2Mbps – quá chậm đối với hầu hết mọi ứng dụng. Và với lý do đó, các sản phẩm không dây thiết kế theo chuẩn 802.11 ban đầu không được sản xuất nữa.

 Chuẩn wifi 802.11b: IEEE đã mở rộng trên chuẩn gốc 802.11 để tạo ra chuẩn 802.11b vào tháng 7/1999. Chuẩn này hỗ trợ băng thông lên đến 11Mbps, tương ứng với Ethernet truyền thông.

 Chuẩn wifi 802.11a: trong khi 802.11b vẫn đang được phát triển, IEEE đã tạo ra một mở rộng thứ 2 có tên gọi là 802.11a. Do giá thành cao hơn nên 802.11a thường được sử dụng cho các mạng doanh nghiệp, còn 802.11b thích hợp hơn cho các hộ gia đình.

 Chuẩn wifi 802.11g: vào năm 2002 và 2003, các sản phẩm WLAN hỗ trợ một chuẩn mới hơn đó là 802.11g, được đánh giá rất cao trên thị trường. Đây là một nỗ lực kết hợp ưu điểm của cả 802.11a và 802.11b, hỗ trợ băng thông lên đến 54Mbps và sử dụng tần số 2.4Ghz để có phạm vi rộng.

 Chuẩn wifi 802.11n: 802.11n đôi khi được gọi tắt là wireless, được thiết kế để cải thiện cho 802.11g trong tổng số băng thông được hỗ trợ bằng cách tận dụng nhiều tín hiệu không dây và anten. Được phê chuẩn vào năm 2009, với băng thông tối đa lên đến 600Mbps, 802.11n cũng cung cấp phạm vi tốt hơn những chuẩn wifi trước đó, do cường độ tín hiệu của nó đã tăng lên.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 21

 Chuẩn wifi 802.11ac: đây là chuẩn wifi lớn nhất, được sử dụng phổ biến nhất hiện nay. 802.11ac sử dụng công nghệ không dây băng tần kép, hỗ trợ các kết nối đồng thời trên cả băng tần 2.4Ghz và 5Ghz. 802.11ac có băng thông đạt tới 1.300Mbps trên băng tần 5Ghz và 450Mbps trên 2.4Ghz.

Bảng 2.1. So sánh thông số các chuẩn wifi.

CÁC CHUẨN WIFI 802.11

Chuẩn IEEE 802.11a 802.11b 802.11g 802.11n 802.11ac

Năm phát hành 1999 1999 2003 2009 2013 Tần số 5 GHz 2.4 GHz 2.4 GHz 2.4/5 GHz 5 GHz Tốc độ tối đa 54 Mbps 11 Mbps 54 Mbps 600 Mbps 1 Gbps Phạm vi trong nhà 100 ft 100 ft 125 ft 225 ft 90 ft Phạm vi ngoài trời 400 ft 450 ft 450 ft 825 ft 1000 ft 2.5. GIỚI THIỆU PHẦN CỨNG 2.5.1. Arduino Uno R3 a.Tổng quan về Arduino

Arduino là một board mạch vi xử lý được sinh ra tại thị trấn Ivrea ở Ý, nhằm xây dựng các ứng dụng tương tác với nhau hoặc với môi trường được thuận lợi hơn. Phần cứng cho Arduino ban đầu là chip AVR, nhưng sau này có rất nhiều nhà sản xuất sử dụng các chip khác nhau như ARM, PIC, STM32 gần đây nhất là ESP8266, ESP32 và RISCV với năng lực phần cứng và phần mềm đi kèm mạnh mẽ hơn nhiều.

Được giới thiệu vào năm 2005, những nhà thiết kế của Arduino cố gắng mang đến một phương thức dễ dàng, không tốn kém cho những người yêu thích, sinh viên và giới chuyên nghiệp để tạo ra những thiết bị có khả năng tương tác với môi trường thông qua các cảm biến và các cơ cấu chấp hành. Những ví dụ phổ biến cho những người yêu thích mới

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 22

bắt đầu bao gồm các robot đơn giản, điều khiển nhiệt độ và phát hiện chuyển động. Đi cùng với nó là một môi trường phát triển tích hợp (IDE) chạy trên các máy tính cá nhân thông thường và cho phép người dùng viết các chương trình cho Aduino bằng ngôn ngữ C/C++.

Hình 2.14. Một số loại Arduino.

Một mạch Arduino thường bao gồm một vi điều khiển AVR với nhiều linh kiện bổ sung giúp dễ dàng lập trình và có thể mở rộng với các mạch khác. Một khía cạnh quan trọng của Arduino là các kết nối tiêu chuẩn của nó, cho phép người dùng kết nối CPU của board với các module thêm vào có thể dễ dàng chuyển đổi, được gọi là shield. Vài shield truyền thông với board Arduino trực tiếp thông qua các chân khác nhau, nhưng nhiều shield được định địa chỉ thông qua serial bus I²C, nhiều shield có thể được xếp chồng và sử dụng dưới dạng song song. Arduino chính thức thường sử dụng các dòng chip megaAVR, đặc biệt là ATmega8, ATmega168, ATmega328, ATmega1280 và ATmega2560.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 23 b. Arduino Uno R3

Với đề tài này nhóm đang thực hiện chúng tôi lựa chọn bộ điều khiển trung tâm là module Arduino Uno R3. Module Arduino Uno R3 có giá cả hợp lý khoảng 110.000VNĐ, sử dụng các mã nguồn mở thuận tiện cho việc lập trình và phù hợp với khả năng của sinh viên.

Arduino Uno R3 là một board điều khiển phù hợp nhất cho những người mới bắt đầu sử dụng vi xử lí ATmega328. Nó có 14 đầu vào/đầu ra số (trong đó 6 chân có thể được sử dụng làm đầu ra PWM), 6 đầu vào analog, một thạch anh thạch anh 16 MHz, một đầu kết nối USB, một jack cắm nguồn, một đầu ICSP để kết nối với mạch nạp và một nút nhấn reset. Nó chứa mọi thứ cần thiết để hỗ trợ vi điều khiển, chỉ đơn giản kết nối nó với một máy tính bằng cáp USB hoặc sử dụng nó với một bộ chuyển đổi AC sang DC hoặc pin để bắt đầu.

Hình 2.15. Hình ảnh thực tế Arduino Uno R3.

Thông số kỹ thuật Arduino Uno R3

 Vi xử lý: Atmega328.  Điện áp hoạt động: 5V.  Điện áp đầu vào: 7-12V.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 24

 Chân vào/ra (I/O) số: 14 chân (6 chân có thể cho đầu ra PWM).  Chân vào tương tự: 6 chân (độ phân giải 10 bit).

 Chân PWM: 6 chân. (adsbygoogle = window.adsbygoogle || []).push({});

 Dòng điện trong mỗi chân I/O: 20mA.  Dòng điện chân nguồn 3.3V: 50mA.

 Bộ nhớ Flash: 32 KB (ATmega328) với 0.5 KB sử dụng cho trình nạp khởi động.  SRAM: 2 KB (ATmega328).

 EEPROM: 1 KB (ATmega328).  Xung nhịp: 16MHz.

Các thành phần chức năng chính của Arduino Uno R3

Vi điều khiển: Arduino UNO có thể sử dụng 3 vi điều khiển 8 bit họ AVR là

ATmega8, ATmega168, ATmega328. Bộ não này có thể xử lí những tác vụ đơn giản như điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đo nhiệt độ - độ ẩm và hiển thị lên màn hình LCD,…

Nguồn cấp: Arduino UNO có thể được cấp nguồn 5V thông qua cổng USB hoặc

cấp nguồn ngoài với điện áp khuyên dùng là 7-12V DC và giới hạn là 6-20V. Thường thì cấp nguồn bằng pin vuông 9V là hợp lí nhất nếu không có sẵn nguồn từ cổng USB. Nếu cấp nguồn vượt quá ngưỡng giới hạn trên sẽ làm hỏng board Arduino UNO.

Các chân nguồn:

GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO. Khi chúng

ta dùng các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau.

5V: cấp điện áp 5V đầu ra, dòng tối đa cho phép ở chân này là 500mA.

3.3V: cấp điện áp 3.3V đầu ra, dòng tối đa cho phép ở chân này là 50mA.

Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, chúng ta nối cực dương của nguồn với chân này và cực âm của nguồn với chân GND.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 25

IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo ở chân này. Điện áp trên chân này là 5V. Chúng ta không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó không phải là cấp nguồn.

Bộ nhớ: Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người dùng:

32KB bộ nhớ Flash: những đoạn lệnh chúng ta lập trình sẽ được lưu trữ trong

bộ nhớ Flash của vi điều khiển. Thường thì sẽ có khoảng vài KB trong số này sẽ được dùng cho bootloader.

2 KB SRAM (Static Random Access Memory): giá trị các biến chúng ta khai

báo khi lập trình sẽ lưu ở đây. Khi mất điện, dữ liệu trên SRAM sẽ bị mất.  1KB EEPROM (Electrically Erasable Programmable Read-Only Memory):

đây giống như một chiếc ổ cứng mini, nơi chúng ta có thể đọc và ghi dữ liệu của mình vào đây mà không phải lo bị mất đi khi mất điện giống như dữ liệu trên SRAM.

Các chân vào ra (I/O):

2 chân Serial: 0 (Rx) và 1 (Tx): dùng để gửi (transmit - Tx) và nhận (receive

- Rx) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này nếu không cần giao tiếp Serial, chúng ta không nên sử dụng 2 chân này nếu không cần thiết.

Chân PWM: 3, 5, 6, 9, 10, và 11: cho phép chúng ta xuất ra xung PWM với

độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite(). Nói một cách đơn giản, chúng ta có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác.

Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK): Ngoài các

chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.

LED 13: trên Arduino UNO có 1 đèn led nó được nối với chân số 13. Chúng (adsbygoogle = window.adsbygoogle || []).push({});

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 26

6 chân analog (A0 → A5): cung cấp độ phân giải tín hiệu 10 bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V. Với chân AREF trên board, chúng ta có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog.  Ngoài ra, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp

I2C/TWI với các thiết bị khác.

Những lưu ý khi sử dụng module Arduino Uno R3:

 Arduino UNO không có bảo vệ cắm ngược nguồn vào. Do đó chúng ta phải hết sức cẩn thận, kiểm tra các cực âm – dương của nguồn trước khi cấp cho Arduino UNO.

 Các chân 3.3V và 5V trên Arduino là các chân dùng để cấp nguồn ra cho các thiết bị khác, không phải là các chân cấp nguồn vào. Việc cấp nguồn sai vị trí có thể làm hỏng board. Điều này không được nhà sản xuất khuyến khích.

 Cấp điện áp trên 13V vào chân RESET trên board có thể làm hỏng vi điều khiển ATmega328.

 Cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog của Arduino UNO nếu vượt quá 200mA sẽ làm hỏng vi điều khiển.

 Cấp điệp áp trên 5.5V vào các chân Digital hoặc Analog của Arduino UNO sẽ làm hỏng vi điều khiển.

 Cường độ dòng điện qua một chân Digital hoặc Analog bất kì của Arduino UNO vượt quá 20mA sẽ làm hỏng vi điều khiển. Do đó nếu không dùng để truyền nhận dữ liệu, chúng ta phải mắc một điện trở hạn dòng.

c.Một số ứng dụng sử dụng module Arduino Uno R3:

 Làm Robot: Arduino có khả năng đọc các thiết bị cảm biến, điều khiển động cơ,… nên nó thường được dùng để làm bộ xử lý trung tâm của rất nhiều loại robot.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 27

Hình 2.16. Robot.

 Máy bay không người lái.

Hình 2.17. Drone.

 Điều khiển đèn tín hiệu giao thông, làm hiệu ứng đèn Led nhấp nháy trên các biển quảng cáo…

 Điều khiển các thiết bị cảm biến ánh sáng, âm thanh.  Làm máy in 3D

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 28

Hình 2.18. Máy in 3D.

2.5.2. Module Wifi ESP8266 NodeMCU a.Tổng quan a.Tổng quan

ESP8266 là dòng chip tích hợp Wi-Fi 2.4Ghz có thể lập trình được, rẻ tiền được sản xuất bởi một công ty bán dẫn Trung Quốc: Espressif Systems. Được phát hành đầu tiên vào tháng 8 năm 2014, đóng gói đưa ra thị trường dạng module ESP-01, được sản xuất bởi bên thứ 3: AI-Thinker. Có khả năng kết nối Internet qua mạng Wi-Fi một cách nhanh chóng và sử dụng rất ít linh kiện đi kèm. Với giá cả có thể nói là rất rẻ so với tính năng và khả năng ESP8266 có thể làm được.

ESP8266 có một cộng đồng các nhà phát triển trên thế giới rất lớn, cung cấp nhiều module lập trình mã nguồn mở giúp nhiều người có thể tiếp cận và xây dựng ứng dụng rất nhanh.

Hiện nay tất cả các dòng chip ESP8266 trên thị trường đều mang nhãn ESP8266EX, là phiên bản nâng cấp của ESP8266.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 29

Hình 2.19. Sơ đồ chân chip ESP8266EX.

Thông số kỹ thuật của chip ESP8266EX:

 32-bit RISC CPU : Tensilica Xtensa LX106 chạy ở xung nhịp 80 MHz.  Hổ trợ Flash ngoài từ 512KiB đến 4MiB.

 64KBytes RAM thực thi lệnh.  96KBytes RAM dữ liệu.  64KBytes boot ROM.

 Chuẩn wifi EEE 802.11 b/g/n, Wi-Fi 2.4 GHz. (adsbygoogle = window.adsbygoogle || []).push({});

 Tích hợp TR switch, balun, LNA, khuếch đại công suất và matching network.  Hổ trợ WEP, WPA/WPA2, Open network.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 30

 Hổ trợ nhiều loại anten.  16 chân GPIO.

 Hỗ trợ SDIO 2.0, UART, SPI, I²C, PWM, I²S với DMA.  1 ADC 10-bit.

 Dải nhiệt độ hoạt động rộng : -40C ~ 125C.

Lập trình ứng dụng với ESP8266 cho ta 2 lựa chọn :

 Sử dụng firmware được cung cấp bởi Espressif và giao tiếp thông qua tập lệnh AT commands.

 Lập trình firmware trực tiếp vào ESP8266 sử dụng bộ thư viện SDK cung cấp bởi Espressif.

b. Module wifi ESP8266 nodeMCU

ESP8266 NodeMCU là dạng vi điều khiển tích hợp Wifi (Wifi SoC) được phát triển bởi Espressif Systems. Với vi điều khiển và Wifi tích hợp, ESP8266 cho phép lập trình viên có thể thực hiện vô số các tác vụ TCP/IP đơn giản để thực hiện vô số các ứng dụng khác nhau, đặc biệt là các ứng dụng IoT..

Các modem Wi-Fi hiện tại đều hỗ trợ chuẩn IEEE 802.11n và hoạt động ở tần số 2.4GHz. ESP8226 nodeMCU là một trong những mô đun hỗ trợ chuẩn Wi-Fi này. Được phát triển trên chip Wi-Fi ESP8266, nodeMCU được dùng cho các ứng dụng kết nối, thu thập dữ liệu và điều khiển thông qua sóng Wi-Fi. NodeMCU có kích thước nhỏ gọn, hỗ trợ chuẩn giao tiếp UART, hỗ trợ kết nối Wi-Fi với nhiều giao thức mạng.

Hơn nữa bản thân NodeMCU là một phiên bản đặc biệt của dòng vi điều khiển Arduino nên nó có thể sử dụng trực tiếp trình biên dịch của Arduino để lập trình và nạp mã. Sử dụng các mã nguồn mở thuận tiện cho việc lập trình và phù hợp với khả năng của sinh viên.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 31

Hình 2.20. Hình ảnh module wifi ESP8266 nodeMCU ngoài thực tế.

Thông số kỹ thuật của module wifi ESP8266:

 Chip: ESP8266EX.

 Điện áp cung cấp : DC 5 ~ 9V.

 WiFi: 2.4 GHz hỗ trợ chuẩn 802.11 b/g/n.  Hỗ trợ bảo mật: WEP/ WPA-PSK/WPA2-PSK.  Bộ nhớ Flash: 32MB.

 Cổng kết nối: hỗ trợ USB-TTL CP2102 với cổng Micro-USB.  Nhiệt độ hoạt động: -40 °C đến +125 °C.

 Giao thức truyền thông: UART, SPI, I2C…  Led báo trạng thái GPIO16, nút Reset.  Tương thích với Arduino IDE.

 Lập trình trên các ngôn ngữ: C/C++, Micropython, NodeMCU Lua.  Khối lượng sản phẩm: 0,0190 kg.

 Kích thước sản phẩm (dài x rộng x cao): 4,80 x 2,60 x 0,10 cm / 1,89 x1,02 x 0,04 inch

 Số chân I/O: 11 (tất cả các chân I/O đều có Interrupt/PWM/I2C/One-wire, trừ chân D0)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH Trang 32

Một phần của tài liệu Thiết kế và thi công mô hình xe robot dò tìm kim loại điều khiển bằng điện thoại (Trang 37)