Intel Edison là gì? Cùng bắt đầu với tôi nào.

I. Lời tựa

Mới có cơ hội được vọc Intel Edison từ chị gái nên hôm nay mình tranh thủ viết bài review về nó để các bạn cùng có cái nhìn chung về board Intel Edison này. Tiếc là mình đang không có máy ảnh + điện thoại trong tay nên sẽ dùng ảnh trên mạng để trình bày nhé. Mình sẽ hướng dẫn các bạn bắt đầu với mạch này từ những bước đơn giản đầu tiên. Hy vọng qua bài viết này, newbie sẽ có cái nhìn toàn diện hơn với Intel Edison.

Đây cũng là board mạch dùng trong cuộc thi VMIG2016, các bạn sinh viên đang học ở các trường Đại học, học viện, cao đẳng Việt Nam hãy cùng đăng ký tham gia nhé.

Nguyễn Sỹ Vinh

II. Giới thiệu về board mạch Intel Edison

Board mạch Intel Edison là một board mạch máy tính nhúng rất nhỏ nhưng lại sở hữu kho tàng kinh tác võ học lớn bên trong. Nó đủ nhỏ để làm các dự án wearable, đủ mạnh mẽ để tự thân xây dựng một con robot siêu bự, hay đủ nhanh để xây dựng dự án xe tự hành. Và đặc biệt hơn cả, nó dư sức xây dựng các dự án IOT.

Một mạch Edison rất mạnh mẽ, bản thân nó đã hỗ trợ tính năng Wifi (802.11a/b/g/n), Bluetooth (4.0 and 2.1 EDR), 2 cổng UART (hardware), 2 cổng I2C, SPI, USB và 40 chân GPIO. Trái tim của Intel Edison là một con vi xử lý Intel® Atom™ Processor với xung nhiệp 500MHz (nhanh hơn 400MHz của Intel Galileo, sau khi quy đổi nhân 3 = 1.5GHz thì nó mạnh hơn Raspberry Pi đời đầu), bên cạnh đó là RAM 1GB LPDDR3 và 4GB Flash (eMMC). Điểm mấu chốt, nó chỉ có kích thước 35.5 x 25.0 x 3.9 mm mà thôi.

Là dân chuyên nghiệp thì các bạn để ý một tí sẽ thấy anten nội (wifi/bluetooth) và một điểm gắn anten ngoài cho con này!

Như đã nói ở trên, Edison rất mạnh mẽ, tuy chỉ là một mạch điện nhỏ như vậy nhưng nó có thể chạy được C/C++, Python, NodeJS,... và hơn hết, nó đã được cài đặt sẵn hệ điều hành Yocto 1.6 (cái hệ điều hành mà các bạn phải vất cả cài ở Intel Galileo nay đã được cài sẵn). 

III. Giao tiếp với Intel Edison

Để giao tiếp với Intel Edison, chúng ta cần một bộ đế như hình dưới. Vì sao phải như vậy? Vì để giữ được kích thước nhỏ cho Intel Edison, nên nhà sản xuất đa đưa toàn bộ mọi thứ giao tiếp về một cổng 70 chân nho nhỏ nằm mặt dưới của board. Nhưng đừng lo lắng, những mạch đế này cũng khá nhiều trên thị trường và tùy vào dự án mà bạn có thể lựa chọn bản thích hợp.

Thông thường, khi bạn đặt mua một mạch Intel Edison thì sẽ có sẵn một bộ minibreakout (mình cũng có) như hình dưới.

Nhưng nếu bạn là newbie thì bạn nên có một board Arduino board breakout cho Intel Edison như hình. Nôm na, bạn sẽ biến con Intel Edison thành một con Intel Galileo, nếu đã pro như vậy thì mua Intel Galileo dùng cho rồi heart

Để đi tiếp, mình xin chỉ trình bày về mini breakout, vì mình đang sở hữu nó, còn bản arduino breakout thì mình đoán nó cũng như Intel Galileo Gen 1 thôi à heart.

IV. Những thứ cần chuẩn bị

V. Cài driver cho máy tính và Arduino IDE

1. Cài Arduino IDE

Các bạn hãy download Arduino IDE phiên bản từ 1.5.7 trở lên là ổn nhé. Nếu chưa biết cài thì tham khảo bài viết về cài đặt tại đây.

2. Cài driver

Theo thứ tự, các bạn cài nhé.

  • Cài FTDI driver (thường thì tự có rồi nhé các bạn)
  • Cài Intel Edison Drivers. Chọn Windows standalone driver 1.2.1 hoặc tương tự, sau đó thì Next liên tục thôi.

VI. Kết nối

Okay, bây giờ khi đa có driver đầy đủ thì chiến thối nào. 

1. Gắn board như hình

Để đảm bảo an toàn cho người và board, các bạn hãy nhẹ nhàng ráp Intel Edison và breakout như hình nhé.

Kiếm thêm mấy con ốc 3li vặn lại cố định là ổn.

Muốn gỡ ra thì các bạn tháo ốc rồi tháo nhẹ tay bằng tay hoăc nhíp là được.

2. Nối dây USB

Khi xong bước 1, bạn sẽ nối dây USB để cấp nguồn cho Intel Edison. Chỉ việc gắn dây microUSB vào cổng USB OTG thế là xong.

Lỡ có gắn lộn cổng thì cũng chả sao, cổng còn lại là cổng Console nó không có nối VCC với VCC của board đâu, chỉ có 3 dây nối là TX, RX và GND thôi.

Nhà sản xuất khuyên bạn nên gắn cổng micro usb còn lại vào máy tính luôn, mình cũng khuyên bạn thế. Vì để nạp firmware và sau này còn SSH vào nưa chứ heart. Còn nếu là newbie thì thôi không cần gắn đâu bạn. Nhưng mà gắn thì cũng không có hư đâu, đừng sợ.

Khi đã gắn điện vào xin hãy kiểm tra theo các bước:

  • Đèn phải sáng
  • Sau đó 30 s thì máy tính sẽ nhận 3 device như thế này
    • Ổ flash 800mb
    • Intel Edison Virtual Com Port: với port này các bạn có thể dùng để lập trình từ Arduino IDE
    • Intel Edison USB RNDIS Device: nôm na nó cho phép bạn chia sẻ Internet từ máy tính tới Intel Edison (quá tuyệt). Xem độ khó khi dùng với Intel Galileo nè.

Nhớ port nhé các bạn, không nhớ thì vô Device Manager của Windows xem. Không biết cách thì có thể google ra ngay.

VII. Lập trình với Intel Edison

Intel Edison đã được cài đặt sẵn các bộ C-compiler, python, nodejs và hơn thế nữa nên bạn thích lập trình kiểu nào cũng được nha. Mình thì hướng dẫn cho newbie với việc dùng Arduino IDE sau đó nạp thẳng lên Edison như Arduino Uno nhé. Nó an toàn hơn nhiều so với các ngôn ngữ khác heart.

Nhớ là đã cấp nguồn rồi nhé. (USB OTG)

1. Nạp code thần thánh Blink

Chọn board như hình

Sau đó chọn port phù hợp và upload sketch blink trong mục Examples thôi heart. Nếu báo không upload được thì đừng lo lắng, thử restart lại xem.

Tuy nhiên trên board Intel Edison không có sẵn LED 13. Vì thế, hãy test Serial như dưới đây để đảm bảo board bạn hoạt động nhé.

2. Upload Serial

Upload đoạn này và xem nó xuất ra những gì bạn nhập không nhé.

void setup() 
{
  Serial.begin(9600);
}

void loop() 
{
  if (Serial.available())
    Serial.print(Serial.read());
} 

Sau đó mở Serial Monitor và enjoy!

VIII. Kiểm tra console

Nếu là newbie thì nên kiểm tra cái này vì đây là một chức năng chỉ có Intel Edison và Intel Galileo có bên cạnh lập trình như Arduino.

Nhớ là gắn cổng USB còn lại vào máy tính nhé. Khi gắn vào sẽ có một cổng COM mới, dùng cổng COM đó để vào console linux nhé.

Các bạn cần có một trình SSH như putty để truy cập console (SSH).

Đặt port mới là port mà mình nói đó nhé với baudrate là 115200.

Sau đó ấn enter vài lần, sau đó một tí là login prompt, các bạn chỉ việc gõ username là root và không có password. Sau đó dùng lệnh passwd để đổi password.

IX. Update firmware

Mình nghĩ, mọi thứ luôn đổi mới và cải biến, tuy board cũ vài năm nhưng nạp firmware mới là xịn ngay, kk, board của mình check ngày sản xuất là 2013 nhưng giờ update lên bản mới là thấy thích rồi heart.

YÊU CẦU BẠN PHẢI NỐI CẢ 2 CỒNG USB VÀO MÁY TÍNH

Sau đó download Intel® IoT Developer Kit ở https://software.intel.com/en-us/iot/hardware/edison/downloads và thực hiện Next liên tục là được. Quá đơn giản so với Intel Galileo

X. Kết nối Wifi

Xem lại VIII để kết nối với console, sau đó dùng lệnh configure_edison --setup để kết nối wifi.

Đầu tiên, các bạn đằng đặt tên SSID cho Intel Edison.

Bạn có thể đặt password cho user root. Sau đó gõ Y để tiến hành cài đặt Wifi.

Sau một vài giây quét Wifi, nó sẽ liệt kê các địa chỉ Wifi gần kề bạn có thể chọn một số bất kỳ từ 2-n. Gõ 0 để scan lại, gõ 1 để gõ một địa chỉ SSID ẩn.

Sau đó, bạn nhập mật khẩu của SSID đó. 

XI. Lời kết

Chúc các bạn thành công nhé! 

Nó rất dễ so với Intel Galileo, nhưng lại rất mạnh mẻ, đáng để thử phải không nào? Có thắc mắc cứ để lại comment, bạn nhé.

lên
15 thành viên đã đánh giá bài viết này hữu ích.
Chuyên mục: 
Các dự án được truyền cảm hứng

Bộ điều khiển PID - ứng dụng phần 2 - xe dò line dùng thuật toán PID

Tiép nối bài viết về xe dò line cảm ơn Đỗ Hữu Toàn đã viết hộ mình phần 4. hôm nay mình sẽ làm cho chiếc xe dò line đi mượt và có hồn hơn 

lên
34 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Lưu log dữ liệu vào thẻ SD với Arduino và Datalogger shield

Với các công việc lập trình cần lưu trữ dữ liệu, bạn cần phải lưu trạng thái của các tín hiệu đầu vào theo thời gian. Hôm nay, mình sẽ hướng dẫn bạn làm điều đó vớ shield datalogger. Bài này chủ yếu ví dụ cho bạn cách làm sao để lưu dữ liệu của cảm biển nhiệt độ, vừa hiển thị lên LCD. Dữ liệu được lưu dưới dạng file excel.

lên
17 thành viên đã đánh giá bài viết này hữu ích.

Hướng dẫn điều khiển động cơ bước với thư viện Accel Stepper và driver điều khiển động cơ bước A4988 hoặc DRV8825

Mình thấy có nhiều bạn hỏi về stepper và cách điều khiển nó. Đồng thời thấy vấn đề điều khiển động cơ bước là một vấn đề kinh điển nhưng lại chưa có trên Cộng đồng. Ngoài ra, vì chức năng điểm cộng đồng khá hay và mình cũng muốn có quà nên hôm nay mình sẽ hướng dẫn rất kỹ với các bạn! Thư viện mình dùng là thư viện AccelStepper chứ không phải thư viện stepper mặc định của Arduino nên có thể điều khiển đồng thời nhiều stepper và kết hợp với các thư viện bất đồng bộ khác.

lên
54 thành viên đã đánh giá bài viết này hữu ích.