Nghiên cứu thiết kế và chế tạo hệ thống thiết bị ứng dụng trong nông nghiệp công nghệ cao

68 17 0
Nghiên cứu thiết kế và chế tạo hệ thống thiết bị ứng dụng trong nông nghiệp công nghệ cao

Đ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

ĐỒN THANH NIÊN CỘNG SẢN HỒ CHÍ MINH BAN CHẤP HÀNH TP HỒ CHÍ MINH CƠNG TRÌNH DỰ THI GIẢI THƯỞNG SINH VIÊN NGHIÊN CỨU KHOA HỌC EURÉKA LẦN THỨ XIX NĂM 2017 TÊN CƠNG TRÌNH: NGHIÊN CỨU THIẾT KẾ VÀ CHẾ TẠO HỆ THỐNG THIẾT BỊ ỨNG DỤNG TRONG NÔNG NGHIỆP CÔNG NGHỆ CAO LĨNH VỰC NGHIÊN CỨU: KỸ THUẬT CÔNG NGHỆ CHUYÊN NGÀNH: KỸ THUẬT CÔNG NGHỆ Mã số cơng trình: …………………………… (Phần BTC Giải thưởng ghi) MỤC LỤC DANH MỤC BẢNG I DANH MỤC CÁC TỪ VIẾT TẮT II DANH MỤC CÁC BIỂU ĐỒ, ĐỒ THỊ, SƠ ĐỒ, HÌNH ẢNH III TĨM TẮT CƠNG TRÌNH VI PHẦN 1: ĐẶT VẤN ĐỀ 1.1 Tính cấp thiết đề tài 1.2 Lí chọn đề tài PHẦN 2: TỔNG QUAN NGHIÊN CỨU 2.1 Tổng quan đề tài 2.2 Tình hình nước 2.3 Tình hình giới 2.4 Vấn đề tồn tài hướng giải vấn đề 12 PHẦN 3: MỤC TIÊU VÀ PHƯƠNG PHÁP NGHIÊN CỨU 13 3.1 Mục tiêu đề tài 13 3.2 Phương pháp nghiên cứu 14 PHẦN 4: NỘI DUNG THỰC HIỆN VÀ KẾT QUẢ CÔNG TRÌNH NGHIÊN CỨU 16 4.1 Thiết kế chế tạo khung máy 16 4.1.1 Nguyên lí phương án kết cấu khí máy 16 4.1.2 Kết cấu phận chức khung máy 19 4.2 Thiết kế cấu chuyển động khí 19 4.2.1 Trục vít me bi 19 4.2.2 Động bước 20 4.3 Thiết kế modul chức chi tiết gá liên kết khung máy 22 4.3.1 Thiết kế đầu modul 22 4.3.2 Thiết kế nhôm liên kết khung máy 25 4.4 Phần điện tử điều khiển 25 4.4.1 Hệ thống máy tính điều khiển trung tâm 25 4.4.2 Board điều khiển xử lí tín hiệu 28 4.4.3 Board driver cho động bước (Microstep driver TB6600) 32 4.4.4 Sensor 34 4.5 Giới thiệu IOT, giao thức kết nối internet điều khiển IOT 35 4.5.1 Giới thiệu IOT ? 35 4.5.2 Giao thức kết nối internet điều khiển IOT 36 4.6 Kết thiết kế thi cơng mơ hình 39 4.6.1 Kết thiết kế thi công hệ thống máy 39 4.6.2 Kết giao diện Website để điều khiển hệ thống qua Internet 43 PHẦN 5: KẾT LUẬN – ĐỀ NGHỊ 46 5.1 Kết luận 46 5.2 Đề xuất kiến nghị 47 TÀI LIỆU THAM KHẢO 49 PHỤ LỤC CODE LẬP TRÌNH VI ĐIỀU KHIỂN VÀ CÁC BẢN VẼ THIẾT KẾ CHẾ TẠO 50 I DANH MỤC BẢNG Bảng 4.1 Thông số kỹ thuật Mega 2560 29 Bảng 4.2 Tín hiệu thơng số chân cảm biến đo độ ẩm 35 II DANH MỤC CÁC TỪ VIẾT TẮT BVTV Chất bảo vệ thực vật CNC (Computer Numberical Control) Điều khiển máy tính Farmtech (Farm Technology) Thiết bị công nghệ phục vụ nông nghiệp GMO (Genetically Modified Organism) Sinh vật biến đổi gen IoT (Internet of Things) Vạn vật kết nối Internet III DANH MỤC CÁC BIỂU ĐỒ, ĐỒ THỊ, SƠ ĐỒ, HÌNH ẢNH Hình 1.1 Ứng dụng cơng nghệ cao vào nơng nghiệp Hình 1.2 Sử dụng Drone để tưới phun hóa chất Hình 1.3 Trồng rau theo kiểu truyền thống Hình 2.1 Robot thu hoạch cà chua tự động Hà Lan có kết cấu phức tạp Hình 2.2 Mục tiêu phát triển Farmtech (IoT) Hình 2.3 Trồng rau mơ hình thu nhỏ sử dụng cấu CNC Hình 2.4 Hệ thống tưới nước tự động Sudan Hình 2.5 Nghiên cứu TS Kaiima không sử dụng GMO tăng sản lượng trồng Hình 2.6 Cơng nghệ nhân gây giống trồng Hazera genetics Hình 3.1 Mơ hình trồng rau truyền thống 13 Hình 3.2 Mơ hình trồng rau tưới phun sương 14 Hình 3.3 Mơ hình hệ thống tưới nhỏ giọt 14 Hình 4.1 Bộ phận đầu hút hạt sử dụng ngun lí Venturi 16 Hình 4.2 Bản thiết kế phần khung hoàn chỉnh 17 Hình 4.3 Sử dụng nhơm định hình MK6 để làm khung máy 17 Hình 4.4 Kết cấu máy thiết kế phần mềm CAD 18 Hình 4.5 Mơ hình khung máy tham khảo 18 Hình 4.6 Mơ hình Farmtech chế tạo thực tế 18 Hình 4.7 Trục truyền động vít me bi dẫn hướng 19 Hình 4.8 Động bước 20 Hình 4.9 Bên động bước 21 Hình 4.10 Điều khiển góc quay động 21 Hình 4.11 Thơng số động bước Nema17 40500 sử dụng máy 22 Hình 4.12 Thiết kế modul dùng để kết nối modul phụ 23 Hình 4.13 Thiết kế đầu gieo hạt (Seeder injection ) thiết kế PTC Creo 23 Hình 4.14 Đầu tưới nước (Watering) thiết kế PTC Creo 23 Hình 4.15 Thiết kế đầu gắn cảm biến (Soil Sensor) thiết kế PTC Creo 23 IV Hình 4.16 Thiết kế modul kết hợp chức gieo hạt, tưới nước 24 Hình 4.17 Modul liên kết thiết kế solidwork thực tế 24 Hình 4.18 Kẹp đỡ máng trượt CNC thiết kế solidwork thực tế 24 Hình 4.19 Modul bới đất thiết kế solidwork thực tế 24 Hình 4.20 Các pass liên kết khung sau lắp ráp 25 Hình 4.21 Thiết kế pass liên kết Autocad 2D gia cơng thực tế 25 Hình 4.22 Hình dạng thực tế board điều khiển 26 Hình 4.23 Sơ đồ kết nối chân Raspberry Pi 27 Hình 4.24 Board điều khiển Mega 2560 MKS V1.4 29 Hình 4.25 Sơ đồ chân board Mega 2560 30 Hình 4.26 Sơ đồ nguyên lí cổng chuyển đổi RS232 30 Hình 4.27 Sơ đồ tạo nguồn 3.3 v 31 Hình 4.28 Sơ đồ điều khiển AVR 31 Hình 4.29 Sơ đồ chân Layout board thiết kế Altium14 32 Hình 4.30 Microstepper Driver TB6600 33 Hình 4.31 sơ đồ kết nối test động với Stepper Driver 34 Hình 4.32 Cảm biến độ ẩm đất 34 Hình 4.33 Xu hướng kết nối vạn vật tương lai gần 36 Hình 4.34 Sơ đồ khối cách giao tiếp MQTT 36 Hình 4.35 Điều khiển thơng qua web app 38 Hình 4.36 Tổng quan cách thức giao tiếp hoạt động tồn thiết bị 39 Hình 4.37 Hệ thống chuyển động trục X Z bánh xe lăn kết hợp đai kéo 40 Hình 4.38 Thi công hệ thống chuyển động trục X Z bánh xe lăn 40 Hình 4.39 Modul liên kết thiết kế Solidwork thực tế chế tạo 41 Hình 4.40 Modul bới đất thiết kế solidwork thực tế 41 Hình 4.41 Các pass liên kết khung sau lắp ráp 42 Hình 4.42 Kẹp đỡ máng trượt CNC thiết kế Solidwork thực tế 42 Hình 4.43 Hệ thống gá đặt khây chứa hạt thay đổi cấu chức 42 Hình 4.44 Mơ hình hồn chỉnh thực tế phịng nghiên cứu 42 Hình 4.45 Mơ hình chạy thử nghiệm tham khảo 43 Hình 4.46 Mơ hình chạy thử nghiệm tưới nước chăm sóc 43 Hình 4.47 Thiết kế khu vườn ảo theo sở thích 43 V Hình 4.48 Tạo trồng ảo theo sở thích 44 Hình 4.49 Lập kế hoạch riêng theo sở thích 44 Hình 4.50 Kiểm sốt hể thống thơng qua web 45 Hình 4.51 Điều khiển vị trí thơng qua cách nút điều hướng 45 VI TÓM TẮT CƠNG TRÌNH Cơng trình nghiên cứu trình bày việc ứng dụng công nghệ CNC (Computer numerical controlled) vào lĩnh vực nông nghiệp, thiết bị tự động ứng dụng nơng nghiệp bao gồm cấu khí chuyển động, hệ thống điện tử điều khiển động step, hệ thống điều khiển web app, hệ thống phần mềm quản lí sản xuất nơng nghiệp ứng dụng cơng nghệ cao từ giai đoạn ươm mầm, xuống giống đến thu hoạch bảo quản để theo dõi đảm bảo theo quy trình tiêu chuẩn, áp dụng phương pháp tưới nước đại nhằm tiết kiệm nước, thời gian, công sức, đạt hiệu kinh tế, kèm theo báo cáo thành phần hóa học dư lượng thuốc bảo vệ thực vật có dùng q trình sản xuất Theo truyền thống trồng rau tự nhiên không kiểm soát dịch bệnh, lạm dụng thuốc bảo vệ thực vật hóa học khơng cách dùng q nhiều liều lượng, nguồn nước cung cấp cho việc trồng trọt chưa đảm bảo sạch, sau thực phẩm thu hoạch chưa có báo cáo cụ thể thành phần hóa học, chưa thực đầu tư nghiên cứu vào quy trình sinh trưởng loại giống mà chủ yếu dựa vào kinh nghiệm quan sát tự nhận biết Việc ứng dụng khung máy CNC có kết cấu khí thiết kế tính tốn động học dựa hệ tọa độ Descartes đảm bảo việc chuyển động nội suy phức tạp xác Q trình tính tốn ứng dụng việc thiết kế chế tạo khí hồn thiện, mơ hình khung CNC đảm bảo hoạt động xác cao, đáp ứng yêu cầu thực tiễn áp dụng trực tiếp vào sản xuất nông nghiệp Khi mơ hình hồn thành giúp tự động hóa quy trình quản lý trồng trọt, hỗ trợ lập kế hoạch thơng qua web app, tính tốn chi phí doanh thu theo mùa vụ, thu thập liệu loại giống , phân tích thơng tin mơi trường xung quanh điều khiển thiết bị: Hệ thống tưới, làm mát, đèn chiếu sáng, quạt, chắn… để giữ cho thời tiết mơi trường trồng thích hợp lí tưởng để trồng phát triển tồn diện Sự kết hợp từ khí đến điều khiển tự động công nghệ thông tin tạo “mơ hình nơng nghiệp tự động thu nhỏ hay cịn gọi với tên Farmtech (IOT)” Việc ứng dụng khoa học kĩ thuật công nghệ cao vào nông nghiệp mang lại nhiều giá trị tiềm phát triển, nâng cao lực cạnh tranh thông qua việc nâng cao suất, chất lượng sản phẩm tối giản chi phí sản xuất, đặc biệt đảm bảo an tồn vệ sinh thực phẩm, kiểm sốt lưu lượng thuốc bảo vệ thực vật, đánh VII giá đảm bảo đủ tiêu chuẩn để đủ sức cạnh tranh xuất thực phẩm thị trường giới 44 - Tạo thêm trồng ảo để phát triển cho khu vườn Hình 4.48 Tạo trồng ảo theo sở thích - Lập kế hoạch kiện: hoạch định thời gian bắt đầu trồng cây, lặp lại (nếu muốn), kết thúc trồng Hình 4.49 Lập kế hoạch riêng theo sở thích - Kiểm sốt hệ thống điều khiển tay dù đâu 45 Hình 4.50 Kiểm sốt hể thống thơng qua web Hình 4.51 Điều khiển vị trí thơng qua cách nút điều hướng Thông qua nút điều hướng ta dịch chuyển vị trí cách tương đối theo hướng cách điều khiển trục X, Y, Z với khoảng cách dịch chuyển thiết lập 1mm, 10mm, 100mm Hoặc nhập tọa độ vị trí tuyệt đối trục X, Y, Z nhấn go để di chuyển đến vị trí Cần phịng hợp cố xảy nên có nút nhấn E- STOP để ngưng toàn hệ thống 46 PHẦN 5: KẾT LUẬN – ĐỀ NGHỊ 5.1 Kết luận Qua trình nghiên cứu thiết kế, thi cơng chế tạo mơ hình nhóm thực chế tạo thành cơng mơ hình hệ thống làm nơng nghiệp tự động tích hợp nhiều chức Hệ thống ban đầu thực chức gieo hạt, tưới nước, quan sát theo dõi tình hình qua hệ thống kết nối Internet Việc sử dụng modul kết nối modul nhỏ giúp người dùng lên kế hoạch chăm sóc q trình phát triển trồng từ lúc gieo hạt, bón phân tưới nước và giám sát nhiệt độ độ ẩm khơng khí để đảm bảo phát triển cách tốt Tất hệ thống lên chương trình sẵn có thông qua hệ thống ứng dụng Internet được xây dựng thành hệ thống Web App để điều khiển hệ thống máy hoạt động dúng theo lịch trình quy định người trồng nơng nghiệp máy thực tế sản xuất Người nơng dân giám sát vườn rau thơng qua thiết bị máy tính kết nối Internet, thiết bị di động Smartphone, Ipad để điều khiển từ xa hệ thống hoạt động cách tự động theo chương trình định sẵn Để vận hành hệ thống tiến tới xây dựng hệ thống trồng rau ứng dụng quy mơ lớn, bước đầu nhóm thực mơ hình có kích thước nhỏ gọn để thử nghiệm kiểm tra độ ổn định Nhóm hồn thành mơ hình hệ thống khí dựa tảng máy điều khiển số CNC di chuyển hệ tọa độ X, Y Z để thực chức thay người khâu gieo hạt, tưới nước, đo độ ẩm khu vườn chí nhổ cỏ thông qua mô-đun lắp ráp cách tiện dụng gá sẵn khung máy Các hệ thống mô-đun chức di chuyển lắp ráp cách tự động thông qua ngàm khớp thiết kế chuyên dụng phục vụ cho chức Hồn thành hệ thống điều khiển thơng qua hệ thống mạng Internet mạch điều khiển công suất sử dụng mạch cơng suất điều khiển có sẵn thị trường Mega 2560 để thực chức vận hành hệ thống khí, máy tính mini Raspberry Pi3 để làm cổng thông tin điều khiển hệ thống công suất Các hệ thống sau phát triển thiết kế chuyên dụng để điều khiển hệ thống lớn Hệ thống trồng rau nhỏ kết cấu đơn giản chế tạo khí giá thành tương đối rẻ 10.000.000 đồng diện tích trồng khoảng 2m2 gieo trồng Chi 47 phí phù hợp điều kiện nơng nghiệp Việt Nam Hệ thống điều khiển bước đầu vận hành cách dễ dàng trực quan nên dễ dàng chuyển giao cho nơng dân Vấn đề cịn tồn tại: Kết cấu khung máy ứng dụng diện tích rộng chưa đủ cứng vững, độ tin cậy hệ thống điện tử chưa thực đủ chất lượng để tin tưởng để vận hành thời tiết nóng ẩm Việt Nam Khung máy chế tạo kích thước nhỏ khơng áp dụng quy mơ nơng nghiệp diện tích lớn Tuy nhiên với giới hạn đề tài chăm sóc vườn nhỏ bên tập trung vào khả máy gọn nhẹ đủ đáp ứng nhu cầu diện tích nhỏ, cơng suất động hiệu truyền phạm vi tương đối Hệ thống phần cứng điện tử điều khiển có sẵn thị trường chưa thực ổn định đạt độ xác cao kết nối với hệ thống mạng Inernet Các chức quản lý Web App chưa đầy đủ theo dõi trình phát triển cây, xử lý ảnh thông minh phát bệnh tật 5.2 Đề xuất kiến nghị Hệ thống trồng rau tự động nghiên cứu chế tạo hệ thống có nhiều hướng phát triển thời đại cách mạng công nghiệp 4.0 Hệ thống áp dụng vào sản thực tế mang lại hiệu kinh tế cao Đặc biệt vấn đề tích hợp nhiều modul sử dụng phải đáp ứng đủ nhu cầu người sử dụng lắng nghe ý kiến phản hồi để có thay đổi tương lai gần đáp ứng nhu cầu tốt Trong tương lai đầu tư tài tốt nhóm phát triển hệ thống khí phục vụ chun dùng chăm sóc rau nhà kính diện tích lớn dựa tảng hệ thống có Và mục tiêu nhóm đại hóa nơng nghiệp lúa nước Việt Nam hệ thống Người nông dân không phụ thuộc vào thời tiết, phụ thuộc vào nhân công lao động thiếu phục trầm trọng công nghiệp hóa Ngành nơng nghiệp lúa nước Việt Nam người nơng dân tự động hóa quy trình chăm sóc lúa cho suất cao Cơng việc tay chân thay máy móc, xác làm việc chăm hiệu Do việc chăm sóc tất liệu bón phân, phun thuốc tăng trưởng, phun thuốc trừ sâu hoàn tồn lưu liệu mạng Người sử dụng nơng sản, lúa gạo truy cập để biết trình phát triển, hay cán nơng nghiệp kiểm tra xem quy trình sản xuất lúa Việt Nam có đủ tiêu chuẩn để xuất thị trường Nhật Bản hay Mỹ hay chưa Một điều mà ngành nông nghiệp lúa nước Việt Nam chưa làm Hy vọng, tương lai, hệ thống thực 48 ước mơ người nông dân trồng lúa Việt Nam đứng hàng đầu giới nhờ ứng dụng khoa học kỹ thuật Hoàn thành việc kết nối khí, điện tử, cơng nghệ thơng tin giao tiếp qua Internet mang lại hiệu quả, tính ứng dụng cao theo kịp xu hướng công nghệ giới kỷ nguyên khởi đầu cách mạng công nghiệp 4.0 Phát triển thêm phần mềm điều khiển điện thoại thông minh (Smartphone) thông qua cổng kết nối Wifi Cần phải có giúp đỡ từ chuyên gia ngành nông nghiệp để hiều rõ loại giống trồng, kết hợp với công nghệ sinh học phân tích đánh giá kiểm tra lại sản phẩm sau thu hoạch Vấn đề tồn nhiều, giới có hạn, khả chuyên môn giới hạn thời gian hạn hẹp nên chưa thể hồn thành choư mục tiêu lớn Nếu có điều kiện chúng em mong có ý kiến đóng góp để nhóm tiếp tục nghiên cứu phát triển ngày hồn thiện góp phần sức lực vào q trình ứng dụng cơng nghệ cao vào nông nghiệp nước nhà 49 TÀI LIỆU THAM KHẢO [ ] Nguyễn Hữu Lộc, Cơ sở thiết kế máy, NXB Đại Học Quốc Gia TP HCM, 2008 [ ] Nguyễn Đắc Lộc tác giả Công nghệ chế tạo máy tập NXBKHKT, Hà Nội, 2003 [ ] Lung Wen Tsai, Robot Analysis - Department of Mechanical Engineering and Institute for Systems Research, University of Maryland - 1999 [ ] Francis C Moon, Applied Dynamics With Applications to Multibody and Mechatronics Systems, John Willey& Sons, Inc 1998 [ ] K.S Fu, R.C Gonzalez, C.S.G Lee, Robotics Control, Sensing, Vision, And Intelligene, McGraw-Hill, Inc 1987 [ ] www.Farmbot.io [ ] www.Genesis.farmbot.io [ ] www.Raspberry.vn [ ] www.Arduino.vn [ 10 ] www.RepRap.org [ 11 ] www.Khoahoc.tv 50 PHỤ LỤC CODE LẬP TRÌNH VI ĐIỀU KHIỂN VÀ CÁC BẢN VẼ THIẾT KẾ CHẾ TẠO A PHỤ LỤC CODE LẬP TRÌNH TRÊN MEGA 2560 CONFIG: #ifndef CONFIG_H_ #define CONFIG_H_ const int LOGGING = 0; //const unsigned long STEPS_FOR_ACC_DEC = 20; //const unsigned int MAX_ACCELERATION_STEPS_PER_SECOND = 2; //const unsigned int MOVEMENT_STEPS_ACC_DEC = 100; //const unsigned int MOVEMENT_MAX_STEPS_PER_SECOND = 1000; //const unsigned int MOVEMENT_HOME_SPEED_S_P_S //const unsigned int MOVEMENT_TIMEOUT = 200; = 30; //const unsigned int INVERT_ENDSTOPS = 1; //const bool AXIS_HOME_UP_X = false; //const bool AXIS_HOME_UP_Y = false; //const bool AXIS_HOME_UP_Z = true; const String COMM_REPORT_CMD_START = "R01"; const String COMM_REPORT_CMD_DONE = "R02"; const String COMM_REPORT_CMD_ERROR = "R03"; const String COMM_REPORT_CMD_BUSY = "R04"; const String COMM_REPORT_CMD_STATUS = "R05"; const String COMM_REPORT_CALIB_STATUS = "R06"; const String COMM_REPORT_COMMENT = "R99"; const int COMM_REPORT_MOVE_STATUS_IDLE = 0; const int COMM_REPORT_MOVE_STATUS_START_MOTOR = 1; const int COMM_REPORT_MOVE_STATUS_ACCELERATING = 2; const int COMM_REPORT_MOVE_STATUS_CRUISING = 3; 51 const int COMM_REPORT_MOVE_STATUS_DECELERATING = 4; const int COMM_REPORT_MOVE_STATUS_STOP_MOTOR = 5; const int COMM_REPORT_MOVE_STATUS_CRAWLING const int COMM_REPORT_MOVE_STATUS_ERROR = 6; = -1; const int COMM_REPORT_CALIBRATE_STATUS_IDLE = 0; const int COMM_REPORT_CALIBRATE_STATUS_TO_HOME = 1; const int COMM_REPORT_CALIBRATE_STATUS_TO_END = 2; const int COMM_REPORT_CALIBRATE_STATUS_ERROR = -1; const int MOVEMENT_INTERRUPT_SPEED = 100; // Interrupt cycle in micro seconds const unsigned int MOVEMENT_SPEED_BASE_TIME const unsigned int MOVEMENT_DELAY = 500; const long PARAM_VERSION_DEFAULT = -1; const long PARAM_TEST_DEFAULT = 2000; = 0; const long MOVEMENT_TIMEOUT_X_DEFAULT = 120; const long MOVEMENT_TIMEOUT_Y_DEFAULT = 120; const long MOVEMENT_TIMEOUT_Z_DEFAULT = 120; const long MOVEMENT_INVERT_ENDPOINTS_X_DEFAULT = 0; const long MOVEMENT_INVERT_ENDPOINTS_Y_DEFAULT = 0; const long MOVEMENT_INVERT_ENDPOINTS_Z_DEFAULT = 0; const long MOVEMENT_INVERT_MOTOR_X_DEFAULT = 0; const long MOVEMENT_INVERT_MOTOR_Y_DEFAULT = 0; const long MOVEMENT_INVERT_MOTOR_Z_DEFAULT = 0; const long MOVEMENT_HOME_UP_X_DEFAULT = 0; const long MOVEMENT_HOME_UP_Y_DEFAULT = 0; 52 const long MOVEMENT_HOME_UP_Z_DEFAULT = 1; // numver of steps used for acceleration or deceleration const long MOVEMENT_STEPS_ACC_DEC_X_DEFAULT = 500; const long MOVEMENT_STEPS_ACC_DEC_Y_DEFAULT = 500; const long MOVEMENT_STEPS_ACC_DEC_Z_DEFAULT = 500; // Minimum speed in steps per second const long MOVEMENT_MIN_SPD_X_DEFAULT = 50; const long MOVEMENT_MIN_SPD_Y_DEFAULT = 50; const long MOVEMENT_MIN_SPD_Z_DEFAULT = 50; // Maxumum speed in steps per second const long MOVEMENT_MAX_SPD_X_DEFAULT = 1500; const long MOVEMENT_MAX_SPD_Y_DEFAULT = 1500; const long MOVEMENT_MAX_SPD_Z_DEFAULT = 1500; // Use encoder (0 or 1) const long ENCODER_ENABLED_X_DEFAULT = 0; const long ENCODER_ENABLED_Y_DEFAULT = 0; const long ENCODER_ENABLED_Z_DEFAULT = 0; // Number of stes missed before motor is seen as not moving const long ENCODER_MISSED_STEPS_MAX_X_DEFAULT = 10; const long ENCODER_MISSED_STEPS_MAX_Y_DEFAULT = 10; const long ENCODER_MISSED_STEPS_MAX_Z_DEFAULT = 10; // How much a good step is substracted from the missed step total (1-99) const long ENCODER_MISSED_STEPS_DECAY_X_DEFAULT = 10; const long ENCODER_MISSED_STEPS_DECAY_Y_DEFAULT = 10; const long ENCODER_MISSED_STEPS_DECAY_Z_DEFAULT = 10; 53 // pin guard default settings const long PIN_GUARD_1_PIN_NR_DEFAULT = 0; const long PIN_GUARD_1_TIME_OUT_DEFAULT = 60; const long PIN_GUARD_1_ACTIVE_STATE_DEFAULT const long PIN_GUARD_2_PIN_NR_DEFAULT = 1; = 0; const long PIN_GUARD_2_TIME_OUT_DEFAULT = 60; const long PIN_GUARD_2_ACTIVE_STATE_DEFAULT const long PIN_GUARD_3_PIN_NR_DEFAULT = 1; = 0; const long PIN_GUARD_3_TIME_OUT_DEFAULT = 60; const long PIN_GUARD_3_ACTIVE_STATE_DEFAULT const long PIN_GUARD_4_PIN_NR_DEFAULT = 1; = 0; const long PIN_GUARD_4_TIME_OUT_DEFAULT = 60; const long PIN_GUARD_4_ACTIVE_STATE_DEFAULT const long PIN_GUARD_5_PIN_NR_DEFAULT = 0; const long PIN_GUARD_5_TIME_OUT_DEFAULT = 60; const long PIN_GUARD_5_ACTIVE_STATE_DEFAULT const long STATUS_GENERAL_DEFAULT = 1; = 1; = 0; const String SOFTWARE_VERSION = "GENESIS V.01.05"; #endif /* CONFIG_H_ */ ARUINO_CONTROLLER 54 #include "farmtech_arduino_controller.h" #include "pins.h" #include "Config.h" #include "StepperControl.h" #include "ServoControl.h" #include "PinGuard.h" #include "TimerOne.h" static char commandEndChar = 0x0A; static GCodeProcessor* gCodeProcessor = new GCodeProcessor(); unsigned long lastAction; unsigned long currentTime; // Blink led routine used for testing bool blink = false; void blinkLed() { blink = !blink; digitalWrite(LED_PIN,blink); } // Interrupt handling for: // - movement // - encoders // - pin guard // bool interruptBusy = false; int interruptSecondTimer = 0; void interrupt(void) { interruptSecondTimer++; if (interruptBusy == false) { 55 interruptBusy = true; StepperControl::getInstance()->handleMovementInterrupt(); // Check the actions triggered once per second if (interruptSecondTimer >= 1000000 / MOVEMENT_INTERRUPT_SPEED) { interruptSecondTimer = 0; PinGuard::getInstance()->checkPins(); //blinkLed(); } interruptBusy = false; } } //The setup function is called once at startup of the sketch void setup() { // Setup pin input/output settings pinMode(X_STEP_PIN , OUTPUT); pinMode(X_DIR_PIN , OUTPUT); pinMode(X_ENABLE_PIN, OUTPUT); pinMode(X_MIN_PIN , INPUT ); pinMode(X_MAX_PIN , INPUT ); pinMode(Y_STEP_PIN , OUTPUT); pinMode(Y_DIR_PIN , OUTPUT); pinMode(Y_ENABLE_PIN, OUTPUT); pinMode(Y_MIN_PIN , INPUT ); pinMode(Y_MAX_PIN , INPUT ); 56 pinMode(Z_STEP_PIN , OUTPUT); pinMode(Z_DIR_PIN , OUTPUT); pinMode(Z_ENABLE_PIN, OUTPUT); pinMode(Z_MIN_PIN , INPUT ); pinMode(Z_MAX_PIN , INPUT ); pinMode(HEATER_0_PIN, OUTPUT); pinMode(HEATER_1_PIN, OUTPUT); pinMode(FAN_PIN , OUTPUT); pinMode(LED_PIN , OUTPUT); //pinMode(SERVO_0_PIN , OUTPUT); //pinMode(SERVO_1_PIN , OUTPUT); digitalWrite(X_ENABLE_PIN, HIGH); digitalWrite(Y_ENABLE_PIN, HIGH); digitalWrite(Z_ENABLE_PIN, HIGH); Serial.begin(115200); // Start the motor handling ServoControl::getInstance()->attach(); // Dump all values to the serial interface ParameterList::getInstance()->readAllValues(); // Get the settings for the pin guard PinGuard::getInstance()->loadConfig(); // Start the interrupt used for moviing // Interrupt management code library written by Paul Stoffregen 57 // The default time 100 micro seconds Timer1.attachInterrupt(interrupt); Timer1.initialize(MOVEMENT_INTERRUPT_SPEED); Timer1.start(); // Initialize the inactivity check lastAction = millis(); } // The loop function is called in an endless loop void loop() { if (Serial.available()) { String commandString = Serial.readStringUntil(commandEndChar); if (commandString && commandString.length() > 0) { lastAction = millis(); Command* command = new Command(commandString); if(LOGGING) { command->print(); } gCodeProcessor->execute(command); free(command); } } delay(10); // Test /**///StepperControl::getInstance()->test(); 58 currentTime = millis(); if (currentTime < lastAction) { // If the device timer overruns, reset the idle counter lastAction = millis(); } else { if ((currentTime - lastAction) > 5000) { // After an idle time, send the idle message Serial.print("R00"); CurrentState::getInstance()->printQAndNewLine(); CurrentState::getInstance()->printPosition(); CurrentState::getInstance()->printEndStops(); lastAction = millis(); } } } ... pháp ứng dụng kỹ thuật ngành nông nghiệp triển khai đem lại hiệu tích cực như: hệ thống trồng rau sạch, hệ thống thông tin nông nghiệp, Việc ứng dụng khoa học kĩ thuật công nghệ cao vào nông nghiệp. .. chọn đề tài “THIẾT KẾ, CHẾ TẠO HỆ THỐNG TỰ ĐỘNG GIEO HẠT VÀ CHĂM SĨC VƯỜN RAU ỨNG DỤNG TRONG NƠNG NGHIỆP CÔNG NGHỆ CAO? ?? 5 PHẦN 2: TỔNG QUAN NGHIÊN CỨU 2.1 Tổng quan đề tài Hiện ứng dụng khoa học... Cơng trình nghiên cứu trình bày việc ứng dụng công nghệ CNC (Computer numerical controlled) vào lĩnh vực nông nghiệp, thiết bị tự động ứng dụng nông nghiệp bao gồm cấu khí chuyển động, hệ thống điện

Ngày đăng: 04/03/2021, 22:59

Từ khóa liên quan

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

Tài liệu liên quan