1. Trang chủ
  2. » Công Nghệ Thông Tin

Giới thiệu về arduino

16 325 3

Đ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

Arduino là một bo mạch vi điều khiển do một nhóm giáo sư và sinh viên Ý thiết kế và đưa ra đầu tiên vào năm 2005. Mạch Arduino được sử dụng để cảm nhận và điều khiển nhiều đối tượng khác nhau. Nó có thể thực hiện nhiều nhiệm vụ từ lấy tín hiệu từ cảm biến đến điều khiển đèn, động cơ, và nhiều đối tượng khác. Ngoài ra mạch còn có khả năng liên kết với nhiều module khác nhau như module đọc thẻ từ, ethernet shield, sim900A, ….để tăng khả ứng dụng của mạch.Phần cứng bao gồm một board mạch nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel8bit, hoặc ARM, Atmel 32bit,…. Hiện phần cứng của Arduino có tất cả 6 phiên bản, Tuy nhiên phiên bản thường được sử dụng nhiều nhất là Arduino Uno và Arduino Mega. Arduino Uno được sử dụng rất rộng rãi trên thế giới, rất nhiều ví dụ trên youtube hoặc các trang hướng dẫn về Arduino sử dụng mạch này. Vì vậy đối với các bạn mới học Arduino, việc chọn Arduino Uno sẽ giúp các bạn có thể tự học dễ dàng.Phần mềm để lập trình cho mạch Arduino là phần mềm IDE. Đây là phần mềm mã nguồn mở, và có thể được download từ trang web của Arduino: arduino.cc. Việc hướng dẫn download và sử dụng phần mềm này sẽ được đề cập đến trong những phần sau.Hiện tại ở Việt Nam và trên thế giới cũng có nhiều bo mạch vi điều khiển khác nhau. Tuy nhiên Arduino có một số ưu điểm mà khiến nó trở nên nổi tiếng và hiện đang được sử dụng rộng rãi trên thế giới. Những ưu điểm đó là: rẻ, tương thích được với nhiều hệ điều hành, chương trình lập trình đơn giản, rõ ràng, dễ sử dụng, sử dụng mã nguồn mở và có thể kết hợp với nhiều module khác nhau.

1PHẦN 1: GIỚI THIỆU VỀ ARDUINO Arduino gì? Arduino bo mạch vi điều khiển nhóm giáo sư sinh viên Ý thiết kế đưa vào năm 2005 Mạch Arduino sử dụng để cảm nhận điều khiển nhiều đối tượng khác Nó thực nhiều nhiệm vụ từ lấy tín hiệu từ cảm biến đến điều khiển đèn, động cơ, nhiều đối tượng khác Ngoài mạch có khả liên kết với nhiều module khác module đọc thẻ từ, ethernet shield, sim900A, ….để tăng khả ứng dụng mạch Phần cứng bao gồm board mạch nguồn mở thiết kế tảng vi xử lý AVR Atmel 8bit, ARM, Atmel 32-bit,… Hiện phần cứng Arduino có tất phiên bản, Tuy nhiên phiên thường sử dụng nhiều Arduino Uno Arduino Mega Arduino Uno sử dụng rộng rãi giới, nhiều ví dụ youtube trang hướng dẫn Arduino sử dụng mạch Vì bạn học Arduino, việc chọn Arduino Uno giúp bạn tự học dễ dàng Phần mềm để lập trình cho mạch Arduino phần mềm IDE Đây phần mềm mã nguồn mở, download từ trang web Arduino: arduino.cc Việc hướng dẫn download sử dụng phần mềm đề cập đến phần sau Hiện Việt Nam giới có nhiều bo mạch vi điều khiển khác Tuy nhiên Arduino có số ưu điểm mà khiến trở nên tiếng sử dụng rộng rãi giới Những ưu điểm là: rẻ, tương thích với nhiều hệ điều hành, chương trình lập trình đơn giản, rõ ràng, dễ sử dụng, sử dụng mã nguồn mở kết hợp với nhiều module khác PHẦN 2: PHẦN CỨNG CỦA ARDUINO UNO R3 Phần nói phần cứng Arduino Uno R3, bo mạch thông dụng Do tài liệu hướng dẫn học nhanh nên tác giả đưa kiến thức cần thiết cho việc sử dụng board mạch Nếu người học cần kiến thức chuyên sâu tham khảo website thức Arduino: arduino.cc Cáp USB IC Atmega 16U2 Cổng nguồn Cổng USB 1a Đầu cắm cổng USB mạch Arduino Nút reset ICSP Atmega 16U2 Chân xuất tín hiệu 1b Đầu cắm cổng USB máy tính 11 Chân cấp nguồn cho cảm biến IC Atmega 328 10 Chân lấy tín hiệu Analog Chân ICSP Atmega 328 Hinh Mạch Arduino Uno Cáp USB Đây dây cáp thường bán kèm theo bo, dây cáp dùng để cắm vào máy tính để nạp chương trình cho bo dây đồng thời lấy nguồn từ nguồn usb máy tính bo hoạt động Ngồi cáp USB dùng để truyền liệu từ bo Arduino lên máy tính Dây cáp có đầu, đầu 1a dùng để cắm vào cổng USB bo Arduino, đầu 1b dùng để cắm vào cổng USB máy tính IC Atmega 16U2 IC lập trình chuyển đổi USB –to-Serial dùng để giao tiếp với máy tính thơng qua giao thức Serial (dùng cổng COM) Cổng nguồn Cổng nguồn nhằm sử dụng nguồn điện bên ngồi pin, bình acquy hay adapter cho bo Arduino hoạt động Nguồn điện cấp vào cổng nguồn DC có hiệu điện từ 6V đến 20V, nhiên hiệu điện tốt mà nhà sản xuất khuyên dùng từ đến 12V Cổng USB Cổng USB bo Arduino dùng để kết nối với cáp USB Nút reset Nút reset sử dụng để reset lại chương trình chạy Đơi chương trình chạy gặp lỗi, người dùng reset lại chương trình ICSP ATmega 16U2 ICSP chữ viết tắt In-Circuit Serial Programming Đây chân giao tiếp SPI chip Atmega 16U2 Các chân thường sử dự án Arduino Chân xuất tín hiệu Có tất 14 chân xuất tín hiệu Arduino Uno, chân có dấu ~ chân băm xung (PWM), tức điều khiển tốc độ động độ sáng đèn Hình thể rõ chân để băm xung IC ATmega 328 IC Atmega 328 linh hồn bo mạch Arduino Uno, IC sử dụng việc thu thập liệu từ cảm biến, xử lý liệu, xuất tín hiệu ra,… Chân ICSP ATmega 328 Các chân ICSP ATmega 328 sử dụng cho giao tiếp SPI (Serial Peripheral Interface), số ứng dụng Arduino có sử dụng chân này, ví dụ sử dụng module RFID RC522 với Arduino hay Ethernet Shield với Arduino 10 Chân lấy tín hiệu Analog Các chân lấy tín hiệu Analog (tín hiệu tương tự) từ cảm biến để IC Atmega 328 xử lý Có tất chân lấy tín hiệu Analog, từ A0 đến A5 11 Chân cấp nguồn cho cảm biến Các chân dùng để cấp nguồn cho thiết bị bên role, cảm biến, RC servo,…trên khu vực có sẵn chân GND (chân nối đất, chân âm), chân 5V, chân 3.3V thể hình Nhờ chân mà người sử dụng không cần thiết bị biến đổi điện cấp nguồn cho cảm biến, role, rc servo,…Ngồi khu vực có chân Vin chân reset, chân IOREF Tuy nhiên chân thường sử dụng nên tài liệu xin khơng sâu 12 Các linh kiện khác board Arduino Uno Ngoài linh kiện liệt kê bên trên, Arduino Uno số linh kiện đáng ý khác Trên bo có tất đèn led, bao gồm led nguồn (led ON nhằm cho biết boa cấp nguồn), led Tx Rx, led L Các led Tx Rx nhấp nháy có liệu truyền từ board lên máy tính ngược lại thơng qua cổng USB Led L được kết nối với chân số 13 Led gọi led on board (tức led bo), led giúp người dùng thực hành đơn giản mà không cần dùng thêm led Trong 14 chân bo có chân truyền nhận liệu nối tiếp TTL Có số ứng dụng cần dùng đến tính này, ví dụ ứng dụng điều khiển mạch Arduino Uno qua điện thoại sử dụng bluetooth HC05 Thêm vào đó, chân chân sử dụng cho lập trình ngắt (interrupt), đồng thời vài chân khác sử dụng cho chức khác, thể hình Bảng thể thêm thơng số cho bo Arduino Uno R3 Hình Các chân vào Arduino Uno Bảng Một số thông số Arduino Uno R3 Vi điều khiển Điện áp hoạt động ATmega328 (họ 8bit) 5V – DC (chỉ cấp qua cổng USB) Tần số hoạt động Dòng tiêu thụ Điện áp vào khuyên dùng Điện áp vào giới hạn Số chân Digital I/O Số chân Analog Dòng tối đa chân I/O Dòng tối đa (5V) Dòng tối đa (3.3V) 16 MHz 30mA 7-12V – DC 6-20V – DC 14 (6 chân PWM) (độ phân giải 10bit) Bộ nhớ flash 30 mA 500 mA 50 mA 32 KB (ATmega328) với 0.5KB dùng bootloader SRAM EEPROM KB (ATmega328) KB (ATmega328) Hình Tham khảo thêm số chức chân Arduino PHẦN 3: DOWNLOAD VÀ CÀI ĐẶT CHƯƠNG TRÌNH IDE CHO ARDUINO Vào trang chủ Arduino: arduino.cc Hình Trang chủ Arduino Nhấn vào mục download Hình Màn hình phần download Chọn hệ điều hành, ví dụ hệ điều hành Windows: Có tùy chọn cho hệ điều hành Windows Windows installer Windows zip file for non admin install Tùy chọn thứ dùng cho người admin máy, tùy chọn thứ cho người admin máy Thông thường đa số chọn tùy chọn thứ nhất, tức Windows installer Download chương trình để cài đặt Arduino có đưa lựa chọn, bao gồm download (just download) download quyên góp (contribute and download), thể hình Arduino mong muốn người dùng có điều kiện quyên góp ủng hộ hãng, mức qun góp thấp 3USD Hình Màn hình trang download phần mềm Cài đặt Phiên viết phiên IDE 1.6.4 Đây phiên phần mềm IDE Sau có phiên kế tiếp, nhiên cách cài đặt giống Sau download người dùng file exe hình bên Để cài đặt, người dùng nhấp đúp vào file đó, phần mềm bắt đầu cài đặt Hình File chạy phần mềm sau download Một thơng báo lên với hàng chữ: “do you want to run this file?”, tức bạn có muốn chạy file không? Người dùng click run (chạy) để cài chương trình Hình Bảng thơng báo bắt đầu cài đặt phần mềm Một thông báo điều khoản sử dụng phần mềm Người dùng nhấn vào I Agree (tôi đồng ý), để tiếp tục cài đặt chương trình Hình Thơng báo điều khoản phần mềm Một hình để người dùng lựa chọn việc cài đặt phần liên quan ra, hình 10 Các bạn để nguyên bấm Next để tiếp tục trình cài đặt Hình 10 Các lựa chọn cài đặt Phần mềm yêu cầu bạn chọn vị trí để cài đặt Các bạn để nơi cài đặt mặc định phần mềm đưa ra, không thay đổi bấm Install (Cài đặt) Hình 11 Chọn đường dẫn cho phần mềm Màn hình thể việc cài đặt xuất hiện, người dùng nhấp vào Show detail (Xem chi tiết) để xem chi tiết trình cài đặt Hình 12 Quá trình cài đặt thực Trong trình cài đặt số phiên hỏi có cài driver USB cho phần mềm IDE khơng, hình 13 bên dưới, người dùng nên tíc chọn vào vng “Always trust software from “Arduino LLC””, sau bấm Install (Cài đặt) để đặt driver USB Cần phải cài driver chương trình nhận cổng USB mạch Arduino Hình 13 Cài đặt driver USB cho IDE Sau việc cài đặt hồn thành, hình xuất dòng chữ Completed (Đã hồn thành), lúc người dùng nhấn nút Close (đóng) để hồn tất q trình cài đặt sử dụng phần mềm Biểu tượng phần mềm xuất hình Desktop người dùng việc nhấp đúp vào để sử dụng phần mềm khác Hình 14 Phần mềm cài đặt xong Phần nói giao diện chương trình để người dùng hiểu rõ cách sử dụng phần mềm PHẦN 4: GIAO DIỆN CỦA PHẦN MỀM IDE Phần nói giao diện phần mền IDE, hình bên thể phần giao diện Người dùng tìm hiểu sâu giao diện này, nhiên phần thường dùng để học nhanh Arduino, có thời gian bạn tìm hiểu thêm viết arduino.cc google,… Các chức biểu tượng phần mềm trình bày chi tiết phần bên Nút kiểm tra chương trình Nút nạp chương trình xuống bo Arduino Hiển thị hình giao tiếp với máy tính Vùng lập trình Vùng thơng báo thơng tin Hình 15 Giao diện phần mềm IDE Giao diện phần mềm IDE có nhiều phần, nhiên ý đến phần quan trọng nêu hình Chức phần sau: Nút kiểm tra chương trình Dùng để kiểm tra xem chương trình viết có lỗi khơng Nếu chương trình bị lỗi phần mềm hiển thị thông tin lỗi vùng số Nút nạp chương trình xuống bo Arduino Dùng để nạp chương trình viết xuống mạch Arduino Trong trình nạp, chương trình kiểm tra lỗi trước sau thực nạp xuống mạch Arduino Hiển thị hình giao tiếp với máy tính Khi nhấp vào biểu tượng kính lúp phần giao tiếp với máy tính mở Phần hiển thị thông số mà người dùng muốn đưa lên hình Muốn đưa lên hình phải có lệnh Serial.print() đưa thơng số cần hiển thị lên hình Vùng lập trình Vùng để người lập trình thực việc lập trình cho chương trình Vùng thơng báo thơng tin: Có chức thơng báo thơng tin lỗi chương trình vấn đề liên quan đến chương trình lập Sử dụng số menu thơng dụng phần mềm IDE Có vài menu phần mềm IDE, nhiên thông dụng menu File, ngồi tính mở file hay lưu file, phần menu có mục đáng ý Example Phần Example (ví dụ) đưa ví dụ sẵn để người lập trình tham khảo, giảm bớt thời gian lập trình Hình bên thể việc chọn ví dụ cho led chớp tắt (blink) để nạp cho mạch Arduino Ví dụ led chớp tắt thường dùng để kiểm tra bo mua Hình 16 Menu file phần mềm IDE Một menu thường sử dụng khác menu Tools Khi kết nối bo Arduino với máy tính ta click vào Tools->board để chọn loại board sử dụng Phần mềm chọn sẵn kiểu bo bo Arduino Uno, người dùng dùng kiểu bo khác chọn kiểu bo dùng Hình 17 Cách chọn bo hình IDE Bên cạnh việc chọn bo phần quan trọng chọn cổng COM Hình bên minh họa cho việc chọn cổng COM Khi lần đầu gắn mạch Arduino vào máy tính, người sử dụng cần nhấn chọn cổng COM cách vào Tools -> Serial Port (một số phiên dùng từ Port) sau nhấn chọn cổng COM, ví dụ COM1 Những lần sau đưa board Arduino vào máy tính khơng cần chọn cổng COM, đưa bo Arduino khác vào máy cần phải chọn lại cổng COM, quy trình thực tương tự Hình 18 Cách chọn cổng COM hình IDE Sau thực bước xong, người dùng bắt tay vào việc lập trình Phần trình bày cấu trúc chương trình phần mềm IDE PHẦN 5: CẤU TRÚC CỦA MỘT CHƯƠNG TRÌNH TRONG PHẦN MỀM IDE Phần đưa cấu trúc chương trình IDE, đồng thời giải thích số lệnh thường sử dụng để thuận tiện cho người dùng Xét ví dụ đơn giản, ví dụ làm cho led nhấp nháy: #define led = 13 // khai báo chân led chân 13 void setup() { pinMode(led, OUTPUT); //Thiết lập chân led (chân 13) chân (OUTPUT) } void loop() { digitalWrite(led, HIGH); // Ra lệnh mở led delay(1000); // Mở 1s (1000ms), thay đổi giá trị digitalWrite(led, LOW); // lệnh tắt led delay(1000); // Tắt 1s (1000ms), thay đổi giá trị } Phần 1: Khai báo biến Đây phần khai báo kiểu biến, tên biến, định nghĩa chân board số kiểu khai báo biến thông dụng: * #define Nghĩa từ define định nghĩa, hàm #define có tác dụng định nghĩa, hay gọi gán, tức gán chân, ngõ với tên Ví dụ #define led 13 Chú ý: sau #define khơng có dấu “,” (dấy phẩy) *Khai báo kiểu biến khác như: int (kiểu số nguyên), float,… Các bạn tham khảo thêm kiểu biến công dụng arduino.cc Phần 2: Thiết lập (void setup()) Phần dùng để thiết lập cho chương trình, cần nhớ rõ cấu trúc void setup() { … } Cấu trúc có dấu ngoặc nhọn đầu cuối, thiếu phần kiểm tra chương trình chương trình báo lỗi Dùng để truyền liệu từ board Arduino lên máy tính Dùng để xác định kiểu chân vào hay Phần dùng để thiết lập tốc độ truyền liệu, kiểu chân chân hay chân vào Trong đó: Serial.begin(9600); pinMode(biến, kiểu vào ra); Ví dụ: pinMode(ChanDO, INPUT); Phần 3: Vòng lặp Dùng để viết lệnh chương trình để mạch Arduino thực nhiệm vụ mà mong muốn, thường bắt đầu bằng: void loop() { ……………… } Một số câu lệnh, cấu trúc thường gặp: Bảng Một số câu lệnh thường gặp Ký hiệu, câu lệnh // /* … */ #define biến chân digitalWrite(chân, trạng thái); analogWrite(chân, giá trị); digitalRead(chân); analogRead(chân); delay(thời gian); if() { Các câu lệnh Ý nghĩa Dấu // dùng để giải thích, nội dung giải thích nằm dòng, kiểm tra chương trình phần kiểm tra bỏ qua phần này, không kiểm tra, Ký hiệu dùng để giải thích, giải thích dành cho đoạn, tức xuống dòng Define nghĩa định nghĩa, xác định Câu lệnh nhằm gán tên biến vào chân Ví dụ #define led 13 Dùng để tắt, mở chân Cú pháp digitalWrite(chân,trạng thái chân); Ở trạng thái chân HIGH LOW Ví dụ: digital(led,HIGH); , digital(led,LOW); Chú dấu chấm phẩy đằng sau câu lệnh Có ý nghĩa dùng để băm xung (PWM), thường dùng để điều khiển tốc độ động cơ, độ sáng led, Read nghĩa đọc, lệnh dùng để đọc giá trị digital chân muốn đọc Read nghĩa đọc, lệnh dùng để đọc giá trị analog chân muốn đọc Delay nghĩa chờ, trì hỗn, trì Lệnh dùng để trì trạng thái thực chờ thời gian Thời gian tính mili giây, giây ngàn mili giây if nghĩa nếu, sau if dấu (), bên dấu ngoặc biểu thứ so sánh Ví dụ cảm biến độ ẩm đất (phần 5) thì: if (giatriAnalog>500) //nếu giá trị đọc biến giatriAnalog lớn } else () { Các câu lệnh } 500 { digitalWrite(Led,HIGH); //Ra lệnh cho led sáng delay(1000);//chờ 1s } else nghĩa ngược lại Serial.print() Serial.println() In hình máy tính, lệnh in khơng xuống dòng In hình máy tính, in xong xuống dòng, giá trị in dòng ... (ATmega328) Hình Tham khảo thêm số chức chân Arduino PHẦN 3: DOWNLOAD VÀ CÀI ĐẶT CHƯƠNG TRÌNH IDE CHO ARDUINO Vào trang chủ Arduino: arduino. cc Hình Trang chủ Arduino Nhấn vào mục download Hình Màn... SPI (Serial Peripheral Interface), số ứng dụng Arduino có sử dụng chân này, ví dụ sử dụng module RFID RC522 với Arduino hay Ethernet Shield với Arduino 10 Chân lấy tín hiệu Analog Các chân lấy... sử dụng cho chức khác, thể hình Bảng thể thêm thông số cho bo Arduino Uno R3 Hình Các chân vào Arduino Uno Bảng Một số thông số Arduino Uno R3 Vi điều khiển Điện áp hoạt động ATmega328 (họ 8bit)

Ngày đăng: 21/03/2018, 11:52

Xem thêm:

TỪ KHÓA LIÊN QUAN

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w