Giới thiệu về Arduino

From MakerLab Wiki
Jump to navigation Jump to search

Arduino là gì?

Arduino là một nền tảng nguồn mở (open-source) với phần cứng và phần mềm được thiết kế dựa trên tiêu chí dễ sử dụng. Các bo mạch Arduino có thể dễ dàng nhận tín hiệu từ cảm biến: ánh sáng, nhiệt độ, độ ẩm,... ,và xuất tín hiệu để điều khiển Relay, Motor, LCD,...,thậm chí bạn có thể sử dụng Twitter để bật tắt bóng đèn hay thiết bị trong nhà sử dụng Arduino.

Nền tảng Arduino (Arduino Platform)

Tổng thể Arduino được cấu tạo từ 2 thành phần chính:

  1. Mạch phần cứng Arduino : được sử dụng để để giao tiếp, kết nối và điều khiển các mạch phần cứng khác như cảm biến, mạch điều khiển động cơ, màn hình LCD,...
  2. Phần mềm Arduino IDE : là phần mềm sử dụng trên máy tính dùng để lập trình và nạp chương trình cho các mạch phần cứng Arduino, các bạn có thể lập trình điều kiển Arduino dựa trên Ngôn ngữ lập trình Arduino sử dụng Phần mềm Arduino IDE. .

Trước đây việc thiết kế lập trình và điều khiển phần cứng dựa trên các linh kiện cơ bản: Tụ điện, điện trở, transistor,..., Vi điều khiển (MCU) xuất hiện đã giúp đơn giản hóa việc thiết kế và lập trình phần cứng đi rất nhiều tuy nhiên việc sử dụng các ngôn ngữ lập trình cũ cũng như việc thiết kế, nạp chương trình còn khá phức tạp và đòi hỏi kiến thức chuyên ngành. Arduino xuất hiện với ngôn ngữ lập trình đơn giản, phần mềm dễ sử dụng, bo mạch thiết kế với các khuân mẫu tiêu chuẩn (có thể gắn với các loại Shield hỗ trợ khác nhau) giúp việc kết nối, sử dụng và lập trình phần cứng đơn giản hóa đi rất nhiều!

Arduino Hardware
Arduino Software

Các biến thể phần cứng Arduino (Arduino Compatible Boards)

Vì nền tảng Arduino được phát triển dưới dạng nguồn mở (Open Source) nên ngoài các mạch phần cứng Arduino được chính hãng Arduino.cc sản xuất, cộng đồng sử dụng Arduino còn phát triển thêm nhiều biến thể Arduino như: Arduino Lilypad (của Adafruit), Arduino RedBoard (SparkFun),..., MakerLab.vn cũng phát triển các phiên bản phần cứng tương thích Arduino (Arduino Compatible) với nhiều cải tiến tên gọi Vietduino, tiêu biểu là 2 phiên bản:

  1. Vietduino Uno (Arduino Uno Compatible):
    Vietduino Uno
  2. Vietduino Mega 2560 (Arduino Mega 2560 Compatible
    Vietduino Mega 2560.jpg


Vietduino UnoVietduino Mega 2560 là hai phiên bản phần cứng tương thích Arduino (Arduino Compatible) có chức năng, kích thước, hình dạng và cách sử dụng tương đương với Arduino Uno R3 và Arduino Mega 2560 nhưng được cải tiến để loại bỏ 3 nhược điểm chính mà board này gặp phải:

  1. Nguồn điện:
    • Arduino Uno R3 và Arduino Mega 2560 sử dụng IC chuyển nguồn tuyến tính LM1117 5VDC có dòng đầu ra thấp và rất nóng khi cấp điện áp đầu vào cao (áp chênh lệch được chuyển thành nhiệt, nếu có các module mắc kèm thêm thì ở 12VDC sẽ cháy mạch).
    • Vietduino Uno và Vietduino Mega 2560 sử dụng mạch nguồn xung với dải điện áp đầu vào linh hoạt 6~35VDC, dòng đầu ra tối đa lên đến 1.5A, mạch nguồn phát nhiệt thấp với hiệu suất chuyển đổi cao và khả năng tiết kiệm năng lượng vượt trội.
    • IC chuyển nguồn 3.3VDC của Arduino Uno R3 và Arduino Mega 2560 có dòng đầu ra tối đa 150mA, trong khi ở Vietduino Uno và Vietduino Mega 2560 là 700mA đủ khả năng cấp nguồn cho các module, cảm biến sử dụng 3.3VDC phổ biến hiện nay như ESP8266, ESP32, cảm biến gia tốc,...mà không cần thêm bất kỳ mạch nguồn phụ trợ nào.
  2. IC nạp:
    • Arduino Uno R3 và Arduino Mega 2560 sử dụng Vi điều khiển ATmega16U2 giả lập chức năng USB UART, thường bị mất firmware khi sử dụng lâu hoặc cháy thạch anh dẫn đến không nhận cổng USB.
    • Vietduino Uno và Vietduino Mega 2560 sử dụng IC chức năng USB UART chuyên dụng CP2102 cho độ ổn định và độ bền cao, vì là IC chức năng và có thạch anh tích hợp bên trong nên sẽ tránh được các trường hợp lỗi của Arduino Uno R3 và Arduino Mega 2560.
  3. Chức năng cách ly nguồn cổng USB khi cấp nguồn ngoài:
    • Ở các phiên bản Arduino Uno và Arduino Mega 2560 sản xuất tại China (giá dưới 300.000VNĐ, không có vỏ hộp giấy, Sticker chính hãng Arduino) thì chức năng cách ly nguồn cổng USB khi cấp nguồn ngoài từ chân Vin hoặc Jack DC không hoạt động (có thể đo nguồn tại cổng USB khi cấp nguồn ngoài để kiểm chứng).
    • Vietduino Uno và Vietduino Mega 2560 khắc phục hoàn toàn nhược điểm này với khả năng cách ly nguồn cổng USB tự động khi cấp nguồn ngoài giúp bảo vệ cổng USB máy tính của bạn an toàn hơn.