Xe điều khiển từ xa thông qua smartphone

Đất nước ta đang trong giai đoạn công nghiệp hoá hiện đại hoá, nên khoa học – kỹ thuật luôn là mối quan tâm hàng đầu. Cùng với sự phát triển nhanh chóng về khoa học - kỹ thuật, nghành điện tự động có những bước phát triển nhảy vọt với linh kiện bán dẫn, các hệ thống nhúng ra đời và kèm theo đó là nhiều ứng dụng mới xuất hiện phụ vụ cho sinh hoạt và sản xuất con người. Hiện nay việc các ứng dụng ngày càng trở nên phổ biến, từ những cái đơn giản như điều khiển cột đèn giao thông định thời, đếm sản phẩm dây chuyền sản xuất, điều khiển động cơ điện một chiều Đến những ứng dụng phức tập như điều khiển Robot, hệ thống kiểm soát Một trong những ứng dụng không kém phần quan trọng trong công nghiệp điều khiển từ xa. Nó đã góp phần rất lớn trong việc điều khiển các thiết bị từ xa hay những thiết bị mà con người không thể trực tiếp chạm vào để điều khiển. Xuất phát từ ứng dụng quan trọng trên, em đã thiết kế và thi công mạch “Xe Điều Khiển Từ Xa Thông Qua Smartphone”

docx78 trang | Chia sẻ: tranhieu.10 | Lượt xem: 9055 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Xe điều khiển từ xa thông qua smartphone, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
MỤC LỤC LỜI NÓI ĐẦU 6 CHƯƠNG 1 GIỚI THIỆU 1.1 Tổng Quan Về Robot 1.1.1. Lịch sử phát triển 1.1.2. Các ứng dụng của Robot. 1.2. Lý Do Chọn Đề Tài, Mục Đích, Đối Tượng Nghiên Cứu 1.2.1. Lý do chọn đề tài 1.2.2. Mục đích của đề tài 1.2.3. Đối tượng phạm vi nghiên cứu 1.3 Gới Thiệu Về Arduino 1.4 Giới Thiệu Chung Về Android 1.4 Giới Thiệu Chung Về Bluetooth CHƯƠNG 2 TỔNG QUAN VỀ ĐỒ ÁN 2.1. Ý Tưởng Thiết Kế 2.1.1. Thiết bị điều khiển 2.1.2. Thiết bị ngoại vi 2.2.Mô hình hệ thống 2.3. Nội dung đồ án CHƯƠNG 3 TỔNG QUAN VỀ ARDUINO, HỆ ĐIỀU HÀNH VÀ BLUETOOTH 3.1.Tổng Quan Về Arduino 3.1.1. Khái niệm về Arduino 3.1.2. Các loại Arduino 3.1.3 Arduino Nano 3.2.Tổng Quan Về Hệ Điều Hành Android 3.2.1 Giới thiệu về android 3.2.3 Chương trình giao diện Android 3.3.Tổng Quan Về Công Nghệ Không Dây Bluetooth 3.3.1 Khái niệm 3.3.2 Đặc điểm của công nghệ Bluetooth 3.3.3 Hoạt động 3.3.4 Các thế hệ Bluetooth 3.3.5 Vấn đề bảo mật trong công nghệ Bluetooth 3.3.6 Trạng thái của thiết bị Bluetooth: 3.3.7 Các chế độ kết nối - Active mode 3.3.8 Kỹ thuật trải phổ nhảy tần số trong công nghệ Bluetooth 3.3.9 Module Bluetooth HC - 06 CHƯƠNG 4 THIẾT KẾ VÀ THI CÔNG 4.1 Chương Trình Android 4.1.1 Giao diện điều khiển Android trên Smartphone 4.1.2 Chương trình Anderoid 4.1.2 Mạch kết nối Bluetooth với Arduino 4.1.3 Sơ Đồ Mạch Điều Khiển Và Động Lực 4.1.4 Mạch Tổng 4.1.5 Chức Năng Linh Kiện Trong Mạch 4.2 Chương Trình Arduino CHƯƠNG 5 KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 5.1 Đánh giá kết quả thực hiện đề tài 5.2 Hướng phát triển PHỤ LỤC HÌNH VẼ 1.1.1: Robot Shakey 7 1.1.2: Robot hàn điểm 8 1.1.3: Robot phẫu thuật 8 1.1.4: Mobile Robot kỹ thuật sử lý hình ảnh 9 1.1.5: Robot song song 6 bậc tự do Merlet 10 1.1.6: Nguyên Bản của Robot Hexapod TU Munich 10 1.1.7: Robot hàn trong công nghiệp sản xuất cơ khí 11 1.1.8: Ứng Dụng Robot trong các hệ thống sản xuất linh hoạt 11 1.1.9: Robot được sử dụng trong công đoạn cấp vật liệu và lắp ráp 13 1.1.10: Các ứng dụng Robot trong các lĩnh vực thám hiểm, quân sự, vệ tinh 13 1.3.1: Arduino Mega 15 1.4.1: Logo Android 16 1.5.1: Logo Bluetooth 17 1.5.2: Bluetooth và kết nối với thiết bị 17 2.1.1: Giao diện điều khiển trên smartphone 18 2.1.2: Arduino nano 19 3.1.1: : Arduino UNO 22 3.1.2: Arduino Leonado 22 3.1.3: Arduino Due 22 3.1.4: Arduino Yún 22 3.1.5: Arduino Tre 22 3.1.6: Arduino Micro 22 3.1.7: Arduino Robot 23 3.1.8: Arduino Esplora 23 3.1.9: Arduino Mega 23 3.1.10: Arduino Ethernet 23 3.1.11: Arduino Mini 23 3.1.12: Lilypad Arduino 23 3.1.13: : Lilypad Arduino USB 24 3.1.14: Lilypad Arduino Simplesnap 24 3.1.15: Arduino Nano 24 3.1.16: Arduino Pro Mini 24 3.1.17: Sơ đồ chân Arduino Nano 24 3.2.1: Biểu tượng Android phiên bản 5.0 Lollipop 33 3.2.2: Giao diện của phần mềm tạo giao diện trên wed 36 3.2.3: Giao diện viết chương trình trên wed 36 3.3.1: Bluetooth phiên bản 4.0 38 3.3.2: Một số thiết bị sử dụng công nghệ Bluetooth 41 3.3.3: Kỹ thuật trải phổ nhảy tần số 44 3.3.4: Các packer truyền trên các tần số khác nhau 44 3.3.5: Cấu tạo của packet 45 3.3.6: Module Bluetooth HC-06 46 3.3.7: Sơ đồ chân HC-06 48 4.1.1: Giao diện điều khiển android trên Smartphone 53 4.1.2: Cho Phép bật Bluetooth trước khi kết nối với Arduino 54 4.1.3: Chế độ điều khiển 1 55 4.1.4: Chế độ điều khiển 2 55 4.1.5: Sơ đồ mạch kết nối Bluetooth với Arduino 60 4.1.6: Sơ đồ mạch động lực 60 4.1.7: Mạch in 62 4.1.8: Mạch sau khi hoàn thành 63 4.1.9: Rơle 63 4.1.10: PC817 64 4.1.11: Transistor A1013 66 4.1.12: Transistor công suất TIP41C 68 LỜI NÓI ĐẦU Đất nước ta đang trong giai đoạn công nghiệp hoá hiện đại hoá, nên khoa học – kỹ thuật luôn là mối quan tâm hàng đầu. Cùng với sự phát triển nhanh chóng về khoa học - kỹ thuật, nghành điện tự động có những bước phát triển nhảy vọt với linh kiện bán dẫn, các hệ thống nhúng ra đời và kèm theo đó là nhiều ứng dụng mới xuất hiện phụ vụ cho sinh hoạt và sản xuất con người. Hiện nay việc các ứng dụng ngày càng trở nên phổ biến, từ những cái đơn giản như điều khiển cột đèn giao thông định thời, đếm sản phẩm dây chuyền sản xuất, điều khiển động cơ điện một chiều Đến những ứng dụng phức tập như điều khiển Robot, hệ thống kiểm soát Một trong những ứng dụng không kém phần quan trọng trong công nghiệp điều khiển từ xa. Nó đã góp phần rất lớn trong việc điều khiển các thiết bị từ xa hay những thiết bị mà con người không thể trực tiếp chạm vào để điều khiển. Xuất phát từ ứng dụng quan trọng trên, em đã thiết kế và thi công mạch “Xe Điều Khiển Từ Xa Thông Qua Smartphone” Qua đây em xin chân thành cảm ơn các thầy cô trong khoa Điện, trường Đại học Đông Á Đà Nẵng, đã giúp đỡ tạo điều kiện và cung cấp tài liệu để em hoàn thành đề tài tốt nghiệp này. Đồng thời, em muốn gửi lời cảm ơn sâu sắc tới cô giáo hướng dẫn Đỗ Hoàng Ngân Mi, cô đã tận tình hướng dẫn và tạo điều kiện thuận lợi để nhóm chúng em hoàn thành được đề tài tốt nghiệp này! Trong quá trình thực hiện đề tài chắc chắn sẽ còn nhiều thiếu sót nhất định. Vậy chúng em mong sự giúp đỡ của Thầy cô và sự góp ý của bạn bè. Chúng em xin chân thành cảm ơn! Đà nẵng, ngày tháng năm 2015 CHƯƠNG 1 GIỚITHIỆU Tổng Quan Về Robot 1.1.2 Lịch sử phát triển Khái niệm Robot ra đời đầu tiên vào ngày 09/10/1922 tại NewYork, khi nhà soạn kịch người Tiệp Kh Karen Kapek đã tưởng tượng ra một cổ máy hoạt động một cách tự động, nó là niềm mơ ước của con người lúc đó. Từ đó ý tưởng thiết kế, chế tạo Robot đã luôn thôi thúc con người. Đến năm 1948, tại phòng thí nghiệm quốc gia Argonne, Goertz đã chế tạo thành công tay máy đôi (master-slave manipulator). Đến năm 1954, Goertz đã chế tạo tay máy đôi sử dụng động cơ servo và có thể nhận biết được lực tác động lên khâu cuối. Năm 1956 hãng Generall Mills đã chế tạo tay máy hoạt động trong việc thám hiểm dại dương. Năm 1968 R.S. Mosher, của General Electric đã chế tạo một cỗ máy biết đi bằng 4 chân. Hệ thống vận hành bởi động cơ đốt trong và mỗi chân vận hành bởi một hệ thống servo thủy lực. Năm 1969, Đại học stanford đã thiết kế robot tự hành nhờ nhận dạng hình ảnh Hình 1.1.1: Robot Shakey Năm 1970 con người đã chế tạo được Robot tự hành Lunokohod, thám hiểm bề mặt của mặt trăng. Trong giai đoạn này, ở nhiều nước khác cũng tiến hành công tác nghiên cứu tương tự, tạo ra các Robot điều khiển bằng máy tính có lắp đặt các loại cảm biến và thiết bị giao tiếp người và máy. Hình 1.1.2. : Robot hàn điểm Hình 1.1.3 : Robot phẫu thuật Theo sự tiến bộ của khoa học kỹ thuật, các Robot ngày càng được chế tạo nhỏ gọn hơn, thực được nhiều chức năng hơn, thông minh hơn. Một lĩnh vực được nhiều nước quan tâm là các Robot tự hành, các chuyển động của chúng ngày càng đa dạng, bắt chước các chuyển động của chân người hay các loài động vật như : bò sát, động vật 4 chân, Và các loại xe Robot (robocar) nhanh chóng được ứng dụng rộng rãi trong các hệ thống sản xuất tự động linh hoạt (FMS). Hình 1.1.4. : Mobile Robot kỹ thuật sử lý hình ảnh Từ đó trở đi con người liên tục nghiên cứu phát triển Robot để ứng dụng trong quát trình tự động hoá sản xuất để tăng hiệu quả kinh doanh. Ngoài ra Robot còn được sử dụng thay cho con người trong các công việc ở môi trường độc hại, khắc nghiệt, Chuyên ngành khoa học về robot “robotics” đã trở thành một lĩnh vực rộng trong khoa học, bao gồm các vấn đề cấu trúc cơ cấu động học, động lực học, quĩ đạo chuyển động, chất lượng điều khiển Tuỳ thuộc vào mục đích và phương thức tiếp cận, chúng ta có thể tìm hiểu lĩnh vực này ở nhiều khía cạnh khác nhau. Hiện nay, có thể phân biệt các loại Robot ở hai mảng chính : Các loại robot công nghiệp (cánh tay máy) và các loại robot di động (mobile robot). Mỗi loại có các ứng dụng cũng như đặc tính khác nhau. Ngoài ra, trong các loại robot công nghiệp còn được phân chia dựa vào cấu tạo động học của nó : Robot nối tiếp (series robot) và robot song song (parallel robot). Hình 1.1.5 : Robot song song 6 bậc tự do Merlet Chính công nghệ tiên tiến ở tất cả các lĩnh vực : cơ khí, vi mạch, điều khiển, công nghệ thông tin đã tạo ra nền tảng cũng như những thách thức lớn đối với khoa học nghiên cứu robot. Chính vì vậy, con người đã và đang tiếp tục phát triển và nâng cao mức độ hoàn thiện trong lĩnh vực đầy hấp dẫn này. Hình 1.1.6 : Nguyên Bản của Robot Hexapod TU Munich 1.1.2. Các ứng dụng của Robot. 1.1.2.1. Các ưu điểm khi sử dụng Robot. Các loại Robot tham gia vào qui trình sản xuất cũng như trong đời sống sinh hoạt của con người, nhằm nâng cao năng suất lao động của dây chuyền công nghệ, giảm giá thành sản phẩm, năng cao chất lượng cũng như khả năng cạnh tranh của sản phẩm tạo ra. Robot có thể thay thế con người làm việc ổn định bằng các thao tác đơn giản và hợp lý, đồng thời có khả năng thay đổi công việc để thích nghi với sự thay đổi của qui trình công nghệ. Sự thay thế hợp lý của robot còn góp phần giảm giá thành sản phẩm, tiết kiệm nhân công ở những nước mà nguồn nhân công là rất ít hoặc chi phí cao như : Nhật Bản, các nước Tây Âu, Hoa Kỳ Tất nhiên nguồn năng lượng từ robot là rất lớn, chính vì vậy nếu có nhu cầu tăng năng suất thì cần có sự hỗ trợ của chúng mới thay thế được sức lao động của con người. Chúng có thể làm những công việc đơn giản nhưng dễ nhầm lẫn, nhàm chán. Robot có khả năng nghe được siêu âm, cảm nhận được từ trường Bên cạnh đó, một ưu điểm nổi bậc của robot là môi trường làm việc. Chúng có thể thay con người làm việc ở những môi trường độc hại, ẩm ướt, bụi bặm hay nguy hiểm. Ở những nơi như các nhà máy hoá chất, các nhà máy phóng xạ, trong lòng đại dương, hay các hành tinh khác thì việc ứng dụng robot để cải thiện điều kiện làm việc là rất hữu dụng 1.1.2.2. Mộ số lĩnh vực ứng dụng. - Ứng dụng trong các lĩnh vực sản xuất cơ khí. Trong lĩnh vực cơ khí, robot được ứng dụng khá phổ biến nhờ khả năng hạot động chính xác và tính linh hoạt cao. Các loại robot hàn là một ứng dụng quan trọng trong các nhà máy sản xuất ôtô, sản xuất các loại vỏ bọc cơ khí Hình 1.1.7 : Robot hàn trong công nghiệp sản xuất cơ khí Ngoài ra người ta còn sử dụng robot phục vụ cho công nghệ đúc, một môi trường nóng bức, bụi bặm và các thao tác luôn đồi hỏi độ tin cậy. Đặc biệt trong các hệ thống sản xuất linh hoạt (FMS), Robot đóng vai trò rất quan trọng trong việc vân chuyển và kết nối các công đoạn sản xuất với nhau Hình 1.1.8. : Ứng Dụng Robot trong các hệ thống sản xuất linh hoạt Ứng dụng trong lĩnh vực gia công lắp ráp. Các thao tác này thường được tự động hoá bởi các robot được gia công chính xác và mức độ tin cậy cao Hình 1.1.9. : Robot được sử dụng trong công đoạn cấp vật liệu và lắp ráp Ứng dụng trong các hệ thống y học, quân sự, khảo sát địa chất. Ngày nay, việc sử dụng các tiện ích từ Robot đến các lĩnh vực quân sự, y tế, rất được quan tâm. Nhờ khả năng hoạt động ổn định và chính xác, Robot đặc biệt là tay máy được dùng trong kĩ thuật dò tìm, bệ phóng, và trong các ca phẫu thuật y khoa với độ tin cậy cao. Hình 1.1.10: Các ứng dụng Robot trong các lĩnh vực thám hiểm, quân sự, vệ tinh Ngoài ra, tuỳ thuộc vào các ứng dụng cụ thể khác mà Robot được thiết kế đểphục vụ cho các mục đích khác nhau, tận dụng được các ưu điểm lớn của chúng đồng thời thể hiện khả năng công nghệ trong quá trình làm việc. 1.2 Lý Do Chọn Đề Tài, Mục Đích, Đối Tượng Nghiên Cứu 1.2.1. Lý do chọn đề tài Trong thời qua, khoa học máy tính và xử lý thông tin có những bước tiến vượt bậc và ngày càng có những đóng góp to lớn vào cuộc cách mạng khoa học kỹ thuật hiện đại, Đặc biệt sự ra đời và phát triển nhanh chóng của kỹ thuật số làm cho nghành kỹ thuật điện tử trở nên phong phú và đa dạng hơn. Nó góp phần rất lớn trong việc đưa kỹ thuật hiện đại thâm nhập rộng rãi vào mọi lĩnh vực của hoạt động sản xuất, kinh tế và đời sống xã hội. Từ những hệ thống máy tính đến các thiết bị cá nhân cầm tay điện thoại Smartphone, để điều khiển các máy công nghiệp đến các thiết bị phụ vụ cho đời sống hằng ngày của con người. Với mong muốn tìm hiểu nguyên lý, kỹ thuật trong các hệ thống điều khiển. Được hướng dẫn của cô Đỗ Hoàng Ngân Mi nhóm đã chọn đề tài “Xe Điều Khiển Từ Xa Thông Qua Smartphone” 1.2.2 Mục đích của đề tài Mục đích nghiên cứu của đề tài này là nghiên cứu về Arduino cụ thể hơn là Arduino nano, phương pháp lập trình cho Arduino bằng ngôn ngữ Arduino (được xây dựng trên ngôn ngữ C), để biên dịch chương trình và up chương trình lên board là phần mềm Arduino IDE. Lập trình ứng dụng Android dùng SDK, giao tiếp thông qua Bluetooth 1.2.3 Đối tượng phạm vi nghiên cứu Board Arduino nano : Nắm được cấu trúc phần cứng, lập trình phần mềm và ứng dụng vào mô hình thực tế. Động cơ DC. Phần mền điều khiển Android. Modul Bluetooth HC – 06. Hướng nghiên cứu và phát triển Nghiên cứu nắm bắt phần cứng của Arduino nano, sơ đồ khối, bố trí chân, tập lệnh điều khiển cho Arduino nano. Tìm hiểu cách điều khiển động cơ DC. Tìm hiểu về lập trình phần mềm Android giao tiếp Bluetooth. Kết quả cuối cùng là xe hoạt động ổn định, điều khiển bằng phần mềm diện thoại. 1.3 Gới Thiệu Về Arduino Là một nền tảng mã nguồn mở được sử dụng để xây dựng các ứng dụng điện tử. Arduino gồm có board mạch có thể lập trình được (thường gọi là vi điều khiển) và các phần mềm hổ trợ phát triển tích hợp IDE (lntegrated Development Environment) dung để soạn thảo, biên dịch code và nộp chương trình cho board. Arduino ngày nay rất phổ biến cho những người mới bắt đầu tìm hiểu về điện tử vì nó đơn giản, hiệu quả và dể tiếp cận. không giống như các loại vi điều khiển khác. Arduino không cần phải có các công cụ chuyên biệt để phục vụ việc nộp code cho PLC cần phải có Pic kit. Đối với Arduino rất đơn giản, ta có thể kết nối với máy tính bằng cáp USB. Thêm vào đó việc lập trình Arduino rất dể dàng, trình biên dịch Arduino IDE sử dụng phiên bản đơn giản hóa cưa ngôn ngữ C++. Hình 1.3.1 : Arduino Mega 1.4 Giới Thiệu Chung Về Android Android là một nền tảng dành cho các thiết bị di động, trong đó phần lớn là điện thoại (smartphone), Tablet, và hiện nay còn được phát triển cho nhiều thiết bị khác nhau như ti vi HD player Car controller,.. Andriod được phát triển dữa trên nền tản Linnux do Google phát hành . Các ứng dụng được phát triển chủ yếu bằng ngôn ngữ java, đồng thời cũng hổ trợ Native-C. Hình 1.4.1. : Logo Android 1.5 Giới Thiệu Chung Về Bluetooth Công nghệ Bluetooth là một công nghệ dựa trên tần số vô tuyến và bất cứ một thiết bị nào có tích hợp bên trong công nghệ này đều có thể truyền thong với các thiết bị khác với một khoảng cách nhất địnhvề cự ly để đảm bảo công suất cho việc phát và nhận sóng. Công nghệ này thường được sử dụng để truyền thông giữa hai loại thiết bị khác với nhau. Hình 1.5.1 : Logo Bluetooth Hoạt động Bluetooth là chuẩn kết nối không dây tầm ngắn, thiết kế cho các thiết bị cá nhân hay mạng cục bộ nhỏ trong phạm vi băng tầng từ 2.4GHz đến 2.485GHz. Bluetooth được thiết kế hoạt động trên 79 tần số đơn lẻ. khi kết nối, nó sẽ tự động tìm ra tần số tương thích để di chuyển đến thiết bị cần kết nối trong khu vực nhằm đảm bảo sự liên kết. Hình 1.5.2 : Bluetooth và kết nối với thiết bị CHƯƠNG 2 TỔNG QUAN VỀ ĐỒ ÁN 2.1. Ý Tưởng Thiết Kế 2.1.1. Thiết bị điều khiển Việc xây dựng ứng dụng trên hệ điều hành Android tương đối thuận lợi, dễ dàng bởi đây là hệ điều hành mã nguồn mở với cộng đồng sử dụng đông đảo. Việc phát triển ứng dụng được thực hiện dễ dàng bất cứ khi nào mà không bị gò bó bởi bộ điều khiển riêng biệt. Qua đó nhóm đã thực hiện tạo một ứng dụng trên chiếc Smartphone chạy hệ điều hành Android, ứng dụng này có nhiệm vụ điều khiển thiết bị ngoại vi thông qua sóng Blutooch. Hình 2.1.1. Giao diện điều khiển trên smartphone 2.1.2. Thiết bị ngoại vi Nhóm sử dụng một modul Bluetooth (HC – 06) để truyền tải dữ liệu với Mobile và được điều khiển bởi 1 vi điều khiển. Vi điều khiển có nhiệm vụ chính là xử lí tín hiệu nhận được từ modul Bluetooth và điều khiển 4 động cơ của xe. Để đơn giản trong lập trình nhóm đã chọn Arduino, cụ thể hơn là chúng em dùng Arduino nano, một loại board mạch vi điều khiển ra đời chưa lâu nhưng tạo sự thu hút rất lớn từ phía các nhà lập trình vi điều khiển cũng như sinh viên đang theo học tại các trường. Việc lập trình cho Arduino cũng khá dễ dàng như các loại vi điều khiển khác, phần mềm viết chương trình cho Arduino là Arduino Intergated Development Environment (IDE). Hình 2.1.2. Arduino nano 2.2. Mô Hình Hệ Thống 2.3. Nội Dung Đồ Án Tổng quan về đồ án Tổng quan về Arduino, hệ điều hành Android và Bluetooth Thiết kế và thi công Nhận xét và hướng phát triển đề tài CHƯƠNG 3 TỔNG QUAN VỀ ARDUINO, HỆ ĐIỀU HÀNH VÀ BLUETOOTH 3.1. Tổng Quan Về Arduino 3.1.1. Khái niệm về Arduino 3.1.1.1 Khái niệm Arduino là một board mạch vi xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như động cơ, cảm biến Đăc điểm nổi bậc của Arduino là môi trường phát triển ứng dụng dễ sử dụng, với một ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử, lập trình. 3.1.1.2.Lịch sử hình thành Arduino được ra đời tại thị trấn Ivrea, nước Ý và được đặt theo tên của một vị vua và thế kỷ thứ 9 là King Arduin. Nó chính thức được giới thiệu vào năm 2005 như là một công cụ cho sinh viên học tập của giáo sư Massimo Banzi, một trong những người phát triển arduino tại trường Interaction Design Instisture Ivrea (IDII). 3.1.2. Các loại Arduino Hình 3.1.1: Arduino UNO Hình 3.1.2: Arduino Leonado Hình 3.1.3: Arduino Due Hình 3.1.4:Arduino Yún Hình 3.1.5: Arduino Tre Hình 3.1.6: Arduino Micro Hình 3.1.7: Arduino Robot Hình 3.1.8: Arduino Esplora Hình 3.1.9: Arduino Mega Hình 3.1.10: Arduino Ethernet Hình 3.1.11: Arduino Mini Hình 3.1.12: Lilypad Arduino Hình 3.1.13: Lilypad Arduino USB Hình 3.1.14: Lilypad Arduino Simplesnap Hình 3.1.15: Arduino Nano Hình 3.1.16: Arduino Pro Mini 3.1.3 Arduino Nano 3.1.3.1. Cấu trúc phần cứng Hình 3.1.17: Sơ đồ chân Arduino Nano Vi điều khiển Atmega328(16 bit) hoặc Atmega168(8bit) Điện áp hoạt động 5V – DC Tần số hoạt động 16MHz Dòng tiêu thụ 30Ma Điên áp và khuyên dung 7 – 12V – DC Điện áp vào giới hạn 6 – 20V – DC Số chân Digital I/O 14 (6 chân PWM) Số chân Analog 8 (độ phân giải 10bit) Dòng tối đa trên mỗi chân 40 mA Dòng ra tối đa (5V) 500 mA Dòng ra tối đa (3,5V) 50 mA Bộ nhớ flash 16 KB (Atmega168) hoặc 32 KB (Atmega328) với 2 KB dùng bởi bootloader SRAM 1 KB (Atmega168) hoặc 2 KB (Atmega328) EEPROM 512 bytes (Atmega168) hoặc 1 KB (Atmega328) Kích thước 1.85 cm x 4.3 cm Các cổng vào ra của Arduino Nano Chân Digital : gồm có 14 chân (chân số 1,2,4,5 đến chân 13) Chân Serial : 2 chân (chân số 1 và 2) dùng để gửi và nhận dữ liệu TTL Serial Chân PWM : 6 chân (chân số 3, 5, 6, 9, 10 và 11) cho phép xuất ra xung PWM với độ phân giải 8bit. Chân giao tiếp SPI: 4 chân (chân số 10, 11, 12 và 13) các chân này cho phép truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác. Chân Led: 1 Chân (chân số 13) trên Arduino có Led mà cam (kí hiệu L), báo hiệu khi bấm nút Reset. Chân Analog : gồm có 8 chân (chân số 16 đến chân 23) I2C :chân số 4 (SDA) và chân số 5 (SCL) hỗ trợ I2C bằng cách sử dụng Wire library. 3.1.3.2.Phần Mềm Arduino 3.1.3.2.1.Phần mềm viết chương trình và biên dịch chương trình Arduino Nano sử dụng phần mềm Arduino IDE để lập chương trình, ngôn ngữ lập trình cho Arduino cũng có tên là Arduino (được xây dựng trên ngôn ngữ C). Ngoài viết chương trình phần mềm Arduino IDE còn biên dịch và tải chương trình lên board. 3.1.3.2.2.Cấu trúc chương trình Một chương trình Arduino cần có tối thiểu Void setup, Void loop. Void setup() { // Toàn bộ đoạn code nằm trong hàm này chỉ được chạy duy nhất một lần khi chạy chương trình } Void loop() { // Lặp lại mãi mãi sau khi chạy xong setup() } Cấu Trúc Cấu trúc điều khiển if if...else switch / case for while break continue return goto Cú pháp mở rộng ; (dấu chấm phẩy) {} (dấu ngoặc nhọn) // (single line comment) /* */ (multi-line comment) #define #include Toán tử số học = (phép gán) + (phép cộng) - (phép trừ) * (phép