Tổng quan về intel galileo

19 160 0
Tổng quan về intel galileo

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN – ĐIỆN TỬ  BÁO CÁO MÔN HỌC HỆ THỐNG NHÚNG ĐỀ TÀI GIỚI THIỆU KIT INTEL GALILLEO Tp.Hồ Chí Minh, tháng 05 năm 2019 LỜI MỞ ĐẦU Phong trào sản xuất phát triển năm qua, với Arduino dẫn đầu thị trường phần cứng nguyên mẫu Nên không dừng lại Intel tiếp tục cho đời sản phẩm hấp dẫn người dùng Intel công ty dẫn đầu thị trường việc phát triển Công nghệ Bộ xử lý cơng ty khơng ngừng nghiên cứu cải tiến công nghệ Galileo Họ đặt tảng vững cho nhà nghiên cứu hệ thống nhúng để phát triển dự án DIY (Do it yourself: tự tay làm lấy) khác xây dựng sản phẩm tiết kiệm lượng tiết kiệm chi phí hơn, lấy Galileo làm điều khiển trung tâm Với Galileo, bạn khơng có tồn quyền kiểm sốt vi xử lí đó, Intel tạo hỗ trợ tốt với tảng Arduino để người dùng tạo thứ họ muốn với Galileo Có thể nói, nỗ lực Intel với Arduino nhằm cho Galileo lớn, tạo thứ khác biệt so với ARM Khơng có cơng ty, hay loại bo mạch thỏa mãn người dùng, Intel lại có nỗ lực to lớn để tạo cú đẩy cho Intel lẫn phong trào nguồn mở nói chung với Galileo Qua đó, Intel phát hành hai phiên Galileo, gọi Gen Gen Các bảng phát triển gọi "Bảng đột phá" Mục đích nghiên cứu tìm hiểu, làm bật Intel Galileo - tính năng, thành phần cơng nghệ có sẵn ngày tảng để lập trình dự án khác MỤC LỤC CHƯƠNG 1: GIỚI THIỆU CHƯƠNG 2: CẤU TẠO VÀ CHỨC NĂNG 2.1 Các chân ngõ kit Intel Galileo………………………………………… …1 2.2 Cấu tạo kit Intel Galileo………………………………………………………… 2.2.1 Bộ xử lý trung tâm……………………………………………………………3 2.2.2 Cấu tạo Intel Galileo………………………………………………….… … 2.2.3 Một số ý…………………………………………………….……… 2.2.4 Thông số điện………………………………………………… …………8 CHƯƠNG 3: GIAO TIẾP VÀ LẬP TRÌNH 3.1 Giao tiếp galileo…….…………………………………………………………………9 3.2 Lập trình………………… …………………………………………………………10 3.3 Thiết đặt jumper Galileo……………………………………………………12 CHƯƠNG 4: NHẬN XÉT VÀ ĐÁNH GIÁ 4.1 Ưu điểm……………………………………… …………………………………….14 4.2 Một số điểm hạn chế…………………………………………………………………14 THAM KHẢO………………………………………………………………………… 16 CHƯƠNG 1: GIỚI THIỆU Intel Galileo board mạch vi điều khiển mang kiến trúc Intel, thiết kế để phần cứng phần mềm tương thích với Arduino shields thiết kế cho Arduino UNO R3 Intel Galileo tương tự Raspberry Pi Intel Galileo Intel trưc tiếp phát triển sản phẩm đội ngũ phát triển Arduino chứng nhận đạt chuẩn tương thích với tảng Arduino Tại CES 2014, Intel trình diễn Intel Galileo với hệ thống điều khiển thiết bị điện tử qua kết nối khơng dây Và giống giải pháp nhà thông minh hay Internet of Things Intel Galileo đóng vai trò điều khiển trung tâm, kết nối với thiết bị điện tử, kết nối với điện thoại máy tính bảng có chạy ứng dụng đặc biệt Từ ứng dụng này, người dùng lệnh đến thiết bị nhờ Intel Galileo Hình 1.1: Board mạch Intel Galileo Gen (Nguồn: Wikipedia) Intel Galileo có: RAM DDR3 256MB Chân cắm chuẩn Arduino Pinout 1.0 Cổng Ethernet 100Mbps Cổng UART RS-232 Khe cắm mini-PCI Express 2.0 full-size Cổng USB 2.0 Khe cắm thẻ nhớ micro-SD hỗ trợ lên tới 32GB Bộ nhớ flash 8MB dùng để chứa firmware hay bootloader 256KB - 512KB nhớ lưu trữ chương trình Arduino Khả chạy hệ điều hành Linux Yocto, Linux Debian, Windows 8, Windows 10, tuỳ biến đặc biệt CHƯƠNG 2: CẤU TẠO VÀ CHỨC NĂNG Các chân ngõ kit intel galilleo: Hình 2.1: Các chân ngõ kit Intel Galilleo Ethernet: Giúp mạch Intel Galileo kết nối với modem/router để kết nối với Internet (tốc độ tối đa lên đến 10/100 Mb/s) RS-232 port: cổng cổng UART (Serial) vật lý Intel Galieo Nó có hình dáng giống hệt jack cắm tai nghe 3.5mm điện thoại USB Client: Cổng cổng Micro USB (uUSB) lấy dây sạc điện thoại thông minh để sử dụng Cổng dùng để lập trình với chương trình Arduino từ máy tính! Cổng CỔNG SERIAL ẢO Intel Galileo, thiết kế bạn lập trình với chương trình Arduino! USB 2.0 Host: cổng USB (không phải cổng UART lại đâu nhé) dùng cho việc nhận tín hiệu thiết bị ngoại vi webcam, usb micro, usb, Intel Galileo hỗ trợ lên đến 128 thiết bị ngoại vi Digital Pin, Analog Pin, Power Pin: Tương tự Arduino Uno Đây thơng số thức mạch Intel Galileo o chân cấp điện (5V, 3.3V, RESET, GND, ) [Power Pin] o chân Analog (A0 - A5) [Analog Pin] o 14 chân Digital (D0-D13) bao gồm chân TX 1, RX (cổng UART vật lý cuối Intel Galileo), chân xung PWM chân D3, D5, D6, D9, D10, D11 o Cổng 2x3 ICPS dùng để giao tiếp SPI Reboot Button: Nút khởi động lại tồn board Intel Galileo, nghĩa khởi động lại máy tính (ở máy tính mạch Intel Galileo) Pin 13 LED: Hãy tưởng tượng LED 13 mạch Arduino Uno Arduino Reset Button: Nút giống nút reset mạch Arduino Uno Khi nhấn vào reset Sketch upload từ chương trình Arduino mà thơi không reset mạch Power Indicator: đèn LED sáng bạn gắn nguồn mạch khởi động Đèn tắt Galileo đươc tắt SD Activity Indicator: đèn LED sáng mạch Intel Galileo có truy cập đến thẻ nhớ bạn Viết chương trình sử dụng tệp RAM làm cho thẻ nhớ bạn bền Server Load mạch thấp! microSD Card: Đây nơi gắn thẻ nhớ điện thoại Nó cài sẵn hệ điều hành mạch Intel Galileo boot hệ điều hành lên khởi động! Thẻ uSD Card thẻ nhớ điện thoại Và mạch Galileo hỗ trợ thẻ nhớ có dung lượng đến 32GB Thực cần thẻ nhớ 1GB đủ sang bạn chơi thẻ 4GB class 10 Tốc độ đọc/ghi nhanh 5V Power In: Đây cổng nguồn Galileo, bạn việc gắn cổng nguồn sạc (có sẵn đập hộp mạch Galileo) vào xong! Ngoài ra, mạch Galileo có cổng PCIe (Peripheral Component Interconnect Express) Cổng Intel Galileo sử dụng để gắn card Wifi vào Nghĩa với card Wifi bạn dễ dàng cài đặt Galileo truy cập vào Access Point (router Wifi) mà khơng cần sử dụng cục thu wifi (router Client) qua cổng LAN (Ethernet)! Cấu tạo kit intel galileo: 2.1 Bộ xử lý trung tâm: Galileo bo mạch vi điều khiển dựa xử lí ứng dụng Intel Quark SoC X1000 xử lí thuộc dòng Pentium 32bit system-on-chip ( (tích hợp tất thành phần hệ thống vào chip xử lí nhất) Galileo bo mạch tương thích với Arduino dựa Intel Architecture Cả phần cứng lẫn phần mềm Galileo tương thích với Arduino Shield vốn thiết kế cho Arduino UNO R3 với chuẩn chân cắm Arduino 1.0 pinout Galileo chạy shield Arduino mức điện áp 3.3V 5V điện áp hệ thống 3.3V Galileo có điều nhờ chuyển đổi điện áp tích hợp bo mạch Theo mặc định, Galileo chạy shield mức 5V chuyển xuống 3.3V cách thay đổi chân cắm (jumper) mạch Hình 2.2: Hình ảnh mặt trước sau board Intel Galileo (Nguồn: Arduino.vn) Ngồi tương thích mặt phần mềm lẫn phần cứng với tảng Arduino, Galileo hỗ trợ chuẩn giao tiếp máy tính cá nhân Vì vậy, Galileo giao tiếp với nhiều thiết bị khác shield hệ sinh thái Arduino Mặc định, bo mạch Galileo hỗ trợ: Cổng full sized mini-PCI Express Cổng Ethernet 100Mb Khe cắm thẻ nhớ Micro-SD Cổng Serial RS-232 Cổng USB Host USB Client 8MB nhớ NOR Flash mặc định mạch 2.2 Cấu tạo Galileo: Hình 2.3: Cấu tạo bên chip Intel Quark Soc X1000 Processor Galileo tương thích với Arduino UNO shield thiết kể để làm việc với shield chạy mức điện áp 3.3V 5V Giống Arduino UNO phiên 3, Galileo có: 14 chân Digital I/O, chân phát xung PWM Chúng sử dụng chế độ INPUT OUTPUT, sử dụng với hàm pin Mode(), DigitalWrite() DigitalRead() mạch Arduino o Các chân giao tiếp hoạt động mức điện áp 3.3V 5V Dòng cấp tối đa 10mA, dòng đỉnh 25 mA o Mỗi chân có điện trở pull-up có trị số khoảng 5.6k đến 10k ohms Mặc định, điện trở bị ngắt chân Analog từ A0 đến A5 giao tiếp qua chip AD7298 (chuyển đổi Analog-to-Digital) (datasheet) o Mỗi chân Analog cung cấp độ phân giải 12bit với 4096 giá trị khác I2C bus, TWI với chân SDA SLC nằm cạnh chân AREF TWI: gồm chân SDA (A4) SCL (A5) Hỗ trợ giao tiếp TWI thông qua thư viện Wire tương tự Arduino SPI: chạy xung mặc định 4Mhz để làm việc với Arduino shield, lập trình lên đến mức 25Mhz 2.3 Một số ý: Dù Galileo có SPI Controler riêng hoạt động SPI Master, khơng phải SPI Slave Do đó, Galileo khơng thể SPI Slave cho SPI Master khác Galileo thiết bị slave kết nối với máy tín qua cổng USB Client Chân 5V output: chân cấp nguồn 5V từ nguồn cấp cho Galileo hay từ nguồn USB Dòng tối đa chân cho shield 800mA Chân 3.3V output: cấp điện áp 3.3V điều chế từ mạch điều áp Galileo Dòng tối đa chân cho shield 800mA GND: chân nối cực âm nguồn điện IOREF: cho phép shield điều chỉnh hoạt động phù hợp với điện áp hoạt động Galileo Chân IOREF kiểm soát jumper mạch để lựa chọn mức điện áp làm việc shield 3.3V 5V RESET: chân/nút nhấn RESET o Kéo chân xuống GND để reset chương trình Arduino chạy Galileo Thường chân dùng để reset shield AREF: không sử dụng Galileo Trên Arduino, chân cung cấp điện áp tham chiếu cho chân đọc tín hiệu analog o Galileo khơng thể điều chỉnh điện áp đỉnh (upper end) độ rộng tín hiệu analog vào chân AREF hay hàm analogReference() Thông số điện: CHƯƠNG 3: GIAO TIẾP VÀ LẬP TRÌNH 3.1 Giao tiếp galileo: Galieo dễ dàng kết nối với máy tính, mạch Arduino hay vi điều khiển khác nhiều phương thức: Galieo cung cấp giao tiếp UART TTL Serial mức 3.3V 5V chân (RX) (TX) Thêm vào đó, cổng UART khác hỗ trợ RS-232 sử dụng qua jack cắm 3.5mm Cổng USB Client cho phép giao tiếp Serial (CDC-ACM) qua USB Nó cung cấp cho bạn kết nối Serial đến Serial Monitor (một chức IDE) ứng dụng khác máy tính bạn Bạn tải chương trình Arduino lên Galieoqua cổng Cổng USB Host cho phép Galieo kết nối tới thiết bị khác chuột, bàn phím, điện thoại thơng minh, với vai trò mộtUSB Host Galieo mạch Arduino cung cấp cổng mini PCI Express (mPCIe) Cổng cho phép kết nối module mPCIe full-size lẫn half- sized (với adapter) cung cấp thêm cổng USB Host khác Một module chuẩn mPCIe kết nối cung cấp cho Galieo nhiều ứng dụng WiFi, Bluetooth hay kết nối mạng di động Bước đầu, cổng mPCIe hỗ trợ thư viện WiFi Xem Intel Galieo Getting Started Guide để biết thêm thông tin Cổng kết nối Ethernet RJ45 cho phép Galieo kết nối đến mạng có dây Giao tiếp Ethernet hỗ trợ đầy đủ Galieo, bạn không cần phải sử dụng giao tiếp SPI Arduino shield Đầu đọc thẻ nhớ microSD tích hợp mạch truy cập thơng qua thư viện SD Giao tiếp Galieo thẻ nhớ microSD hỗ trợ trình điều khiển SD tích hợp, bạn khơng cần phải sử dụng giao tiếp SPI mạch Arduino Giao tiếp SD chạy với tần số đến 50Mhz phụ thuộc vào Class thẻ nhớ Thẻ nhớ có loại Class thơng dụng Class Class 10 Phần mềm Arduino bao gồm thư viện Wire giúp bạn dễ dàng sử dụng bus I2C/TWI Với giao tiếp SPI, sử dụng thư viện SPI 3.2.Lập trình: Galieo lập trình với IDE Arduino Khi sẵn sàng để tải chương trình lên, kết nối máy tính bạn với Galieo qua cổng USB Client (gần cổng Ethernet nhất) mạch, IDE chọn Boards "Intel Galieo" Thay phải bấm nút reset mạch để tải chương trình lên, Galieo thiết kế để reset software chạy máy tính lập trình Khi Galieo khởi động, có kịch xảy ra: Nếu có chương trình nhớ, khởi chạy Trường hợp xảy bạn gắn thẻ microSD vào Galileo Nếu khơng có chương trình nhớ, Galieo đợi lệnh tải chương trình lên từ IDE o Nếu khơng có thẻ microSD, chương trình bạn bị Galileo khởi động lại (reboot) Khi chương trình chạy Galieo, bạn tải chương trình khác lên mà không cần nhấn nút reset mạch: chương trình chạy bị ngừng, Galileo đợi đến chương trình tải lên khởi chạy Bằng việc bấm nút reset mạch, bạn khởi động lại chương trình chạy, đồng thời reset shield cắm vào Galieo Galieo lập trình với ngơn ngữ Arduino Sau cài chương trình Arduino IDE kết nối máy tính bạn với Galieo qua cổng USB Client (gần cổng Ethernet nhất) mạch, Tools -> Boards chọn Intel Galileo Hình 2.1 Phần mềm sử dụng Arduino IDE 10  Code nạp board Intel Galileo: int led = 7; int led2 = 8; void setup() { pinMode(led, OUTPUT); pinMode(led2, OUTPUT); } void loop() { digitalWrite(led, HIGH); delay(500); digitalWrite(led, LOW); delay(500); digitalWrite(led2, HIGH); delay(1000); digitalWrite(led2, LOW); delay(1000); }  Giải thích: - “int led = 7;int led2 = 8;” đặt chân có tên led led2 ta sử dụng câu lênh “#define led 7; #define led 8” thay cho câu lệnh Chúng 11 ta sử dụng từ khóa “ int ” để khai báo biến thuộc kiểu số nguyên - “void setup()” câu lệnh dùng để setup cấu hình cho chân sử dụng INPUT OUTPUT,… viết dấu ngoặc {} - “ pinMode(led,OUTPUT); pinMode(led2,OUTPUT);” đặt cấu hình cho chân led OUTPUT xuất tín hiệu - “void loop()” vòng lặp thực tuần hồn Các câu lệnh viết dấu {} thực lặp lặp lại - “digitalWrite(led,HIGH);”, “digitalWrite(led,LOW);” câu lệnh dùng để đưa tín hiệu mức thấp mức cao cho chân led HIGH tương ứng với mức logarit LOW tương ứng với mức logarit - “ delay(1000);” lệnh trùy hoãn thời gian sáng tắt led có gia trị tính millisecond cụ thể trường hợp nàu 1000ms 3.3 Thiết đặt jumper Galileo: Có jumper Gailieo sử dụng cho nhiều mục đích khác I2C jumper IOREF jumper Để Galileo chạy shield mức 3.3V 5V, điện áp chân giao tiếp bên điều chỉnh jumper Khi jumper nối vào mức 5V, Galileo hoạt động với shield chạy 5V điện áp chân IOREF 5V Khi jumper nối vào mức 3.3V, Galileo hoạt động với shield chạy 3.3V điện áp chân IOREF 3.3V Phạm vi điện áp đọc chân analog kiểm sốt với IOREF jumper khơng vượt điện áp hoạt động Tuy nhiên, hàm analogRead() giữđộ phân giải 10bit (mặc định, chỉnh lên 12bit) mức 5V với 1024 đơn vị hay 0.0049V (4.9mV) đơn vị bất chấp cài đặt IOREF jumper người dùng VIN jumper 12 Trên Galileo, chân VIN sử dụng để cấp nguồn ngồi 5V, nối với jack nguồn cấp nguồn cho shield hay thiết bị khác Nếu bạn muốn cấp nguồn cho mạch mức điện áp lớn 5V cho shield lấy nguồn từ chân VIN, bạn phải tháo VIN jumper để ngắt kết nối chân VIN với nguồn 5V Galileo Cảnh báo Nếu VIN jumper chưa tháo ra, bạn sử dụng mức điện áp cao 5V chân VIN, Galileo bị hư hại hay gặp phải hoạt động bất thường Vị trí jumper Intel Galileo Hình 3.1: Vị trí jumper board Intel Galileo 13 CHƯƠNG 4: NHẬN XÉT VÀ ĐÁNH GIÁ 4.1 Ưu điểm: Galileo chạy hệ điều hành Linux dễ dàng triển khai dự án lớn Galileo Linux hạt đậu nhỏ MS-DOS Có thể tạo Linux thích hợp cho Có thể thoải mái lập trình Galileo nhiều ngơn ngữ Python, PHP, C++, miễn Galileo có cài trình biên dịch cho ngơn ngữ Galileo mô chức để giống hệt Arduino Galileo dễ dàng tham gia vào dự án Arduino mà khơng gặp nhiều khó khăn tương thích Nếu làm việc với Arduino dễ dàng chuyển qua làm với Galileo Galileo hỗ trợ chuẩn chân cắm Arduino pinout 1.0 tận dụng shield sẵn có Arduino để mở rộng chức Galileo Galileo có cổng Ethernet tích hợp Chỉ cần cắm dây vào Galileo sẵn sàng kết nối vào mạng Internet Galileo có khe cắm thẻ nhớ microSD Galileo có cổng mini-PCI Express Ngồi việc mở rộng chức shield qua hàng chân cắm Arduino pinout 1.0, Galileo mở rộng thêm nhiều chức kết nối WiFi, Bluetooth, GSM, GPRS/3G, loại card hỗ trợ giao tiếp qua cổng mPCIe Galileo có cổng USB Host Điều giúp Galileo kết nối với hàng tá thiết bị ngoại vi khác sử dụng cổng USB Có thể dễ dàng dùng Galileo web server 4.2 Một số điểm hạn chế: Galileo chưa thực giống Arduino hoàn toàn Các hàm PusleIn(), Servo() chưa hỗ trợ 14 Timer1, mills(), micro() gặp số trục trặc khơng hoạt động hồn hảo Arduino Một số shield chạy Arduino không chúng chạy Galileo Các chân I/O Galileo có tần số hoạt động chậm Arduino khoảng từ 100 - 1000 lần Galileo gặp khó khăn giao tiếp với số cảm biến hay thiết bị ngoại vi Cảm biến nhiệt độ - độ ẩm DHT11 ví dụ khơng thể dùng Galileo để điều khiển thứ kiểu Quadcopter Những thứ Quadcopter đòi hỏi tần số hoạt động chân I/O cao để giữ thăng Các thư viện Arduino có sử dụng chức chip AVR không hoạt động Galileo Kiến trúc Arduino gắn liền với vi xử lí họ AVR (ATmega8/168/328), xử lí Intel Quark X1000 Galileo mô chức Galileo có mức tiêu thụ điện lớn Để đánh đổi sức mạnh xử lí, Galileo cần có nguồn điện với cơng suất đến 10W (5V - 2A) Đa phần dự án chạy pin kham mức tiêu thụ lượng 15 TÀI LIỆU THAM KHẢO [1] Jimblom, “Galileo Getting Started Guide”, Sparkfun, (2014) Trang: [Ngày truy cập: 23/03/2019] [2] Ngô Huỳnh Ngọc Khánh (KSP), “Bài 3: Cài đặt Driver cho máy tính để lập trình mạch Intel Galileo”, Cộng đồng Arduino, (2014) Trang: < http://arduino.vn/bai-viet/257-bai-3-cai-dat-driver-cho-may-tinh-de-laptrinh-mach-intel-galileo?fbclid=IwAR1IZ1V9KxD43In9WMxFciHMpLp5jODNoPK2TUpOzbfv4gfShxixWRBPUE> [Ngày truy cập: 23/03/2019] [3] Arduino, “Intel Galileo”, Arduino Page Trang: [Ngày truy cập: 23/03/2019] [4] Nguyễn Quốc Bảo, “Bài 5: Tải chương trình mẫu lên Intel Galileo”, Cộng đồng Arduino, (2014) Trang: [Ngày truy cập: 23/03/2019] [5] Ngô Huỳnh Ngọc Khánh (KSP), “Bài 1: Giới thiệu sơ lược Intel Galileo”, Cộng đồng Arduino, (2014) Trang: [Ngày truy cập: 23/03/2019] [6] Nguyễn Quốc Bảo, “Intel Galileo - Dữ liệu kĩ thuật”, Cộng đồng Arduino, (2014) Trang: [Ngày truy cập: 27/03/2019] 16 ... 2.1 Các chân ngõ kit Intel Galileo ……………………………………… …1 2.2 Cấu tạo kit Intel Galileo ……………………………………………………… 2.2.1 Bộ xử lý trung tâm……………………………………………………………3 2.2.2 Cấu tạo Intel Galileo ……………………………………………….…... THIỆU Intel Galileo board mạch vi điều khiển mang kiến trúc Intel, thiết kế để phần cứng phần mềm tương thích với Arduino shields thiết kế cho Arduino UNO R3 Intel Galileo tương tự Raspberry Pi Intel. .. đặc biệt Từ ứng dụng này, người dùng lệnh đến thiết bị nhờ Intel Galileo Hình 1.1: Board mạch Intel Galileo Gen (Nguồn: Wikipedia) Intel Galileo có: RAM DDR3 256MB Chân cắm chuẩn Arduino Pinout

Ngày đăng: 17/07/2019, 09:07

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan