3.2.1. Lƣu đồ thuật toán
Lưu đồ thuật toán chương trình chính
Mô tả hoạt động:
Đầu tiên khi mới vào chương trình ta khở ạo các thông s cơ bản của thể i t ố thông như: Các chân I/O, giao thức giao tiếp máy tính UART, trình phục vụ ngắt ngoài t i chân s 2 và 3, ạ ố các chân tạo xung PWM điều khiển cho động cơ Servo
Sau khi kh i t o các giá tr c n thi t ta ti p tở ạ ị ầ ế ế ục vào chương trình chính. Đầu tiên ta s khẽ ởi động băng chuyền để đưa sản ph m c n phân lo i vào. Các c m biẩ ầ ạ ả ến phần lo i sạ ẽ đặt lần lượt theo th t : Sứ ự ắt, đồng. Vì board Arduino Nano chỉ có 2 chân ng t ngoài, nên ắ ở đây tôi chọn gi i pháp là s d ng m t chân ng t cho 2 cả ử ụ ộ ắ ảm biến s t và h ng ngo i. Chân tín hi u t i c a c m bi n s t s n i song song v i chân ắ ồ ạ ệ ạ ủ ả ế ắ ẽ ố ớ số 6.
Khi có ng t t i chân s 3 ta sắ ạ ố ẽ xét điều ki n. Nệ ếu pin6 =1 thì có nghĩa là sản phẩm đang nằm ở vị trí của cảm biến sắt. Ngược lại thì sản phẩm đang ở cảm biến hồng ngoại.
Nếu có ngắt ở chân số 2 có nghĩa là sản ph m ẩ đang dừng lại ở ị v trí c m biả ến đồng.
Khi đã xác định được loại vật liệu ta cho dùng băng chuyền, điều khiển động cơ Servo đẩy sản phẩm xuống khay đựng, gởi dữ liệu đếm thêm số lượng sản phẩm ở trong khay lên máy tính thông qua giao tiếp UART.Tại PC sẽ có ph n mầ ềm để hiển thị số lượng s n phả ẩm đang có tại các khay.
Lƣu đồ thuật toán khối hiển thị
Hình 3.16: Lưu đồ thuật toán khối hi n th ể ị
Mô tả hoạt động:
Phần m m khi k t n i v i c ng COM thì sề ế ố ớ ổ ẽ chờ ữ liệ d u g i v t mở ề ừ ạch điều khiển băng chuyền.
Khi có dữ liều thì ph n m m sầ ề ẽ đọc chu i và c t dỗ ắ ữ liệu, n u dế ữ liệu nhần được là 1 thì sẽ tăng số lượng c a vật liệu sắt. Và nếu là 2 thì sẽ cộng thêm 1 vào số ủ lượng đồ . Sau đó tiếng p tục chờ lệnh gởi lên từ mạch điều khiển.
TÀI LI U THAM KH O Ệ Ả
Tài liệu trong nước
[1] Trần Tr ng Minh ọ – Giáo trình điện t công su t, Nhà xu t b n giáo d c, xuử ấ ấ ả ụ ất bản 11-2007.
[2] Lê C nh Trung - ả Phạm Quang Huy - Lập trình điều khi n v i Arduino. Nhà ể ớ xuất bản Khoa Học và Kỹ Thuật, 2014.
[3] Nguyễn Văn Thọ - Linh kiện & Mạch điệ ửn t , Bộ môn Điệ ử ễn t vi n thông, Khoa công nghệ thông tin, Đại học Duy Tân.
Tài liệu nước ngoài
[4] MPU-6000 and MPU-6050 Product Specification Revision 3.4, release 08/19/2013.
[5] L298 Dual Full-Bridge Driver Product Specification, Jenuary 2000.
[6] Everything You Need to Know about the nRF24L01 and MiRF-v2 Written by Brennen Ball, 2007.
[7] Brian W.Evans, Arduino Programming Notebook, August 2007. [8] Brian Evans, Beginning Arduino Programming, 2011.
[9] Robert Mahony, Tarek Hamel, Jean-Michel Pflimlin, Complementary filter design on the special orthogonal group SO(3), December 12-15, 2005.
[10] Shane Colton, The Balance Filter, Rev.1: Submitted as a Chief Delphi white paper - June 25, 2007.
Tài liệu website
[11]http://www.invensense.com/ [12]http://www.arduino.cc/ [13]http://www.olliw.eu/2013/imu-data-fusing/#chapter21 [14]https://sites.google.com/site/myimuestimationexperience/filters/complementary -filter [15]http://vnrobotics.com/product/p/6967/17478/rf-nrf24l01.html?l=vn