Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 124 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
124
Dung lượng
7,57 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP NGÀNH CNKT CƠ ĐIỆN TỬ NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ TẠO BÀN VẼ HOA VĂN TRÊN CÁT GVHD: TS HUỲNH QUANG DUY SVTH: HUỲNH LÊ THUẬN PHÁT HÀ TẤN PHÁT SKL011145 Tp Hồ Chí Minh, Tháng năm 2023 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ TẠO BÀN VẼ HOA VĂN TRÊN CÁT Giảng viên hướng dẫn: TS HUỲNH QUANG DUY Sinh viên thực hiện: HUỲNH LÊ THUẬN PHÁT MSSV: 19146232 Sinh viên thực hiện: HÀ TẤN PHÁT MSSV: 19146231 Lớp: 19146CL2B Khóa: 2019 - 2023 TP Hồ Chí Minh, tháng năm 2023 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO BỘ MÔN CƠ ĐIỆN TỬ ĐỒ ÁN TỐT NGHIỆP NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ TẠO BÀN VẼ HOA VĂN TRÊN CÁT Giảng viên hướng dẫn: TS HUỲNH QUANG DUY Sinh viên thực hiện: HUỲNH LÊ THUẬN PHÁT MSSV: 19146232 Sinh viên thực hiện: HÀ TẤN PHÁT MSSV: 19146231 Lớp: 19146CL2B Khóa: 2019 - 2023 TP Hồ Chí Minh, tháng năm 2023 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM KHOA ĐÀO TẠO CHẤT LƯỢNG CAO CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự – Hạnh phúc Bộ môn: Cơ Điện tử NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Học kỳ 02/ năm học 2022-2023 Giảng viên hướng dẫn: … TS Huỳnh Quang Duy………….……… ……………… Sinh viên thực hiện: ……… Huỳnh Lê Thuận Phát……… MSSV: …19146232…… Hệ đào tạo…CLV …… Hà Tấn Phát……… ……… MSSV: …19146231…… Hệ đào tạo…CLV Ghi chú: sinh viên điền thơng tin hệ đào tạo, ví dụ: CLV (Chất lượng cao tiếng Việt); CLA (Chất lượng cao tiếng Anh) Mã số đề tài: 22223DT122 -Tên đề tài: Nghiên cứu, thiết kế chế tạo bàn vẽ hoa văn cát Các số liệu, tài liệu ban đầu: - Sản phẩm vừa đồ nội thất vừa làm sản phẩm trang trí cho ngơi nhà - Tính giải trí tạo cảm giác thư giãn - Tham khảo sản phẩm vẽ tranh cát có ngồi thị trường - Phần mềm SOLIDWORKS để mô sản phẩm - Phần mềm chuyển đổi hình hoa văn cần vẽ sang mã Gcode Nội dung đồ án: -Tìm hiểu mẫu bàn thị trường, tìm hiểu cấu truyền động -Thiết kế chế tạo bàn vẽ hoa văn cát -Thiết kế lập trình hệ thống điện, giao diện tương tác người dùng sản phẩm -Tính tốn phần lựa chọn động cho mơ hình -Gia cơng, lắp ráp hồn chỉnh thiết bị -Thử nghiệm nhận xét kết Các sản phẩm dự kiến: -Báo cáo đồ án tốt nghiệp -Bản vẽ thiết kế khí -Mơ hình vận hành ổn định Ngày giao đồ án: 15/03/2023 i Ngày nộp đồ án: 15/07/2023 Ngôn ngữ trình bày: Bản báo cáo: Tiếng Anh Tiếng Việt Trình bày bảo vệ: Tiếng Anh Tiếng Việt Ghi chú: Hệ chất lượng cao tiếng Anh thực thuyết minh báo cáo tiếng Anh TRƯỞNG KHOA TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN (Ký, ghi rõ họ tên) (Ký, ghi rõ họ tên) (Ký, ghi rõ họ tên) ii LỜI CAM KẾT - Tên đề tài: Nghiên Cứu, Thiết Kế Và Chế Tạo Bàn Vẽ Hoa Văn Trên Cát GVHD: Huỳnh Quang Duy - Họ tên sinh viên: Huỳnh Lê Thuận Phát - MSSV: 19146232 - Địa sinh viên: 14/38 Làng Tăng Phú, TP Thủ Đức, TP.HCM - Số điện thoại liên lạc: 0834886930 - Email: 19146232@student.hcmute.edu.vn - Họ tên sinh viên: Hà Tấn Phát - MSSV: 19146231 - Địa sinh viên: 74/1A, Xã Bà Điểm, Huyện Hóc Mơn, TP.HCM - Số điện thoại liên lạc: 0333034148 - Email: 19146231@student.hcmute.edu.vn - Ngày nộp khóa luận tốt nghiệp (ĐATN): 15/7/2023 - Lời cam kết: “Tôi xin cam đoan khoán luận tốt nghiệp (ĐATN) cơng trình tơi nghiên cứu thực Tôi không chép từ viết cơng bố mà khơng trích dẫn nguồn gốc Nếu có vi phạm nào, tơi xin chịu hồn tồn trách nghiệm” - Lớp:19146CL2B Lớp:19146CL2B Tp Hồ Chí Minh, ngày tháng năm 2023 Ký Tên iii LỜI CẢM ƠN Nhóm em xin gửi lời cảm ơn đầy chân thành đến Ba Mẹ chúng em Người tận tình giúp chúng em có đủ điều kiện để đến trường ngày Sau tình hình dịch bệnh viêm phổi cấp covid 19 cải thiện ba mẹ người động viên chúng em động lực để chúng em cố gắng ngày Ba mẹ giúp chúng em nhiều việc làm đồ án mặt tinh thần mà mặt vật chất, kinh phí để thực đồ án, cịn chăm lo sức khỏe cho chúng em Thứ nhóm em xin phép gửi lời cảm ơn đến Ban giám hiệu trường Đại Học Sư Phạm Kỹ Thuật TP.HCM quý thầy cô trường Đại Học Sư Phạm Kỹ Thuật TP.HCM truyền đạt kiến thức từ mơn trước để chúng em có kiến thức để làm đồ án Thứ nhóm em gửi lời cảm ơn đầy chân thành đến thầy Huỳnh Quang Duy, thầy ln nhiệt tình hướng dẫn, truyền đạt, góp ý, chia sẻ kiến thức, kinh nghiệm đầy quý báu nhóm chúng em, khơng thầy cịn triển khai buổi thảo luận, chia sẻ học kĩ mặt kỹ thuật kỹ mềm mà kỹ sư cần có để giúp chúng em cải thiện phát triển thân Trong trình thực nhờ vào hướng dẫn thầy, chúng em vận dụng tốt kiến học để hoàn thiện đồ án, nhiên đồ án thực thời gian ngắn khơng thể tránh khỏi sai sót Chúng em mong nhận góp ý từ quý thầy, để rút kinh nghiệm hồn thiện báo cáo Một lần nữa, nhóm chúng em xin gửi lời chúc sức khỏe chân thành đến ba mẹ chúng em q thầy iv TĨM TẮT ĐỒ ÁN NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ TẠO BÀN VẼ HOA VĂN TRÊN CÁT Đề tài nhóm trình bày chi tiết thơng tin liên quan đến mơ hình bàn vẽ hoa văn cát ứng dụng, nhu cầu sản phẩm lĩnh vực trang trí nội thất, vật dụng thơng minh gia đình Kết hợp giải trí yếu tố công nghệ nhầm bắt kịp nhịp độ với xu hướng đại ngày Những năm gần đây, nhu cầu nội thất thông minh đồ nội thất cổ điển quen thuộc với gia đình hàng ngày kết hợp với cơng nghệ để tăng tính tiện dụng nội thất giúp tăng công thiết bị ngày tăng cao, nhận thấy tính cấp thiết nhu cầu này, nhóm nghiên cứu thiết kế thành công chế tạo bàn vẽ hoa văn cát với giả phải đảm bảo tính thơng minh giá trị thẩm mỹ vốn có Thơng qua q trình nghiên cứu thiết kế chế tạo, nhóm thực cải tiến với nhiều tính khác với nhiều hướng vận hành khác để đến q trình thống mơ hình bàn vẽ hoa văn cát hoạt động ổn định mang vẻ ngồi đại Trong đó, đề tài nghiên cứu bao gồm: vẽ thiết kế 2D 3D chi tiết phần khí bàn vẽ hoa văn cát, sơ đồ mạch điện hệ thống, sơ đồ thiết kế hệ thống điều khiển, linh kiện vi điều khiển sử dụng mơ hình Lưu đồ giải thuật chương trình điều khiển thông tin cách điều khiển mô hình thơng qua trang web dùng riêng để điều khiển Ngồi ra, đề tài cịn thể hình ảnh sản phẩm, mơ hình thực tế nhóm thiết kế, xây dựng trình nghiên cứu Kết chứng tỏ nhóm nghiên cứu chế tạo thành cơng mơ hình bàn vẽ hoa văn cát thực tế mơ hình hoạt động ổn định v ABSTACT RESEARCH, DESIGN AND MANUFACTURING OF SAND DRAWING PATTERN TABLE The group's topic will present information related to the model of the table drawing patterns on the sand as well as the product's applications in the fields of interior decoration, smart household items The combination of entertainment and technological elements keeps pace with the trend of industrial networks 4.0 In recent years, the demand for smart furniture, classic furniture familiar to the family every day, combined with technology to increase the usability of the interior to help increase the functions of the device is increasing day by day Increasingly, realizing the urgency of this need, the team has researched to design a pattern drawing table in the sand with an affordable price but still ensure its intelligence as well as its inherent aesthetic value Through the process of research and manufacturing, the team has practiced and improved with many different features with many different operating directions to arrive at the process of unifying the model of the sand drawing table with stable operation and has a modern exterior In which, the research topic will include: 2D and 3D design drawings of the mechanical part of the sand drawing table, the circuit diagram of the system, the control system, the components as well as the microcontroller used in the model Algorithm flowchart of control programs and information on how to control the model through a dedicated control web page In addition, the topic also has product images, real models built during the research process The results show that the team has researched and basically made a model of drawing table with patterns on sand and the model has basically operated stably vi MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP i LỜI CAM KẾT iii LỜI CẢM ƠN iv TÓM TẮT ĐỒ ÁN v MỤC LỤC vii DANH MỤC BẢNG BIỂU x DANH MỤC HÌNH VẼ xi DANH MỤC TỪ VIẾT TẮT xiv CHƯƠNG GIỚI THIỆU 1.1 Tính cấp thiết đề tài 1.2 Ý nghĩa khoa học thực tiễn đề tài 1.3 Mục tiêu nghiên cứu đề tài 1.4 Đối tượng phạm vi nghiên cứu 1.4.1 Đối tượng nghiên cứu 1.4.2 Phạm vi nghiên cứu 1.5 Phương pháp nghiên cứu 1.5.1 Cơ sở pháp luận 1.5.2 Các phương pháp nghiên cứu cụ thể 1.6 Kết cấu Đồ án tốt nghiệp CHƯƠNG TỔNG QUAN NGHIÊN CỨU ĐỀ TÀI 2.1 Giới thiệu 2.2 Đặc tính hệ thống 2.3 Kết cấu hệ thống 10 2.4 Các nghiên cứu liên quan đề tài 10 2.4.1 Các nghiên cứu nước 11 2.4.2 Các nghiên cứu nước 12 2.5 Các tồn hệ thống 12 CHƯƠNG CƠ SỞ LÝ THUYẾT 13 3.1 Tổng quan sản phẩm Bàn vẽ hoa văn cát 13 3.1.1 Nguyên lý hoạt động bàn vẽ hoa văn cát 13 3.1.2 Ngôn ngữ Gcode 13 3.2 Động bước 14 vii Bảng 6.2 Kết cấu vẽ hình bơng hoa chưa có tải Số lần thực 10 Kết (giây) 268 269 271 270 270 270 271 268 269 269 Bảng 6.3 Kết cấu vẽ hình bơng hoa có bi lẫn cát Số lần thực 10 Kết (giây) 273 273 272 273 274 272 272 271 273 270 Hình 6.16 Hình ảnh bơng hoa vẽ thực nghiệm 93 6.4 Phân tích kết thực nghiệm Biểu đồ thời gian vẽ cấu 275 Đơn vị theo giây (s) 274 273 272 271 270 269 268 267 266 265 Lần Lần Lần Lần Lần Lần Lần Lần Lần Lần 10 Số lần thử nghiệm Chỉ có bi khơng có cát khơng có bi cát Có bi cát Hình 6.17 Hình ảnh biểu đồ lần thử nghiệm cấu Kết cho thấy cấu hoạt động ổn định điều kiện có tải, sai số lần thực không đáng kể 94 KẾT LUẬN – ĐỀ NGHỊ Kết Luận Sau trình tìm hiểu, nghiên cứu học hỏi, tham khảo từ nhiều nguồn kiến thức khác nhóm hồn thiện mơ hình thu kết • Về phần khí Nhóm chọn hệ Cartesian để thực đạt yêu cầu đặt Do phần thiết kế có nét tương đồng với cấu CNC trục nên thành phần cấu đa phần có sẵn thị trường nên tốn chi phí thiết kế gia công Giúp giá thành mơ hình chi phí thấp Mơ hình chạy tương đối ổn định đạt yêu cầu đặt ban đầu • Hạn chế Mơ hình nhóm cịn hạn chế mặt chuyển động sử dụng chuyển động Cartesian nên đường cong vẽ chưa mềm mại hồn hảo cho Tính thẩm mỹ mơ hình cịn tương đối chưa xem đẹp mắt cho Phần tiếp xúc nam châm bi sắt vài mặt hạn chế nên bi sắt chưa hút nam châm chặt cho vẽ với tốc độ cao • Về mạch điện Nhóm sử dụng vi điều khiển vi điều khiển ESP32 Arduino Mega 2560 Sử dụng vi điều khiển nhóm muốn tách riêng biệt nhận liệu điều khiển động ESP32 có nhiệm vụ nhận truyền liệu cịn Arduino mega 2560 điều khiển động giúp cho có cố xảy khơng ảnh hưởng đến mạch lại Mạch ESP32 sử dụng chân SDA, SCL Mạch Arduino Mega 2560 sử dụng chân I2C Pinout cho driver Nhóm sử dụng driver TB6600 để điều khiển động X Y • Hạn chế Cịn hạn chế mặt chi phí sử dụng nhiều vi điều khiển driver Các thiết kế để dây rườm rà chưa đẹp mắt cho • Về điều khiển Lập trình điều khiển động hoạt động ổn định di chuyển đến điểm mong muốn cách ổn định mượt mà phương pháp nội suy mà khơng phải dùng mạch hỗ trợ có sẵn Lập trình vẽ hoa văn cát cách: vẽ tự động, vẽ hình mà người dùng mong muốn, vẽ hình theo thời gian thực 95 • Hạn chế Mơ hình vẽ chưa đạt tốc độ mà nhóm mong muốn Cịn nhiều sai số q trình thử nghiệm Về phương pháp vẽ hình mà người dùng mong muốn vẽ hình với tơng màu đơn giản vẽ hình phức tạp cịn hạn chế hình có cát nét trùng Dựa vào kết đánh giá trực tiếp ta thấy mơ hình bàn vẽ hoa văn cát hoạt động tương đối ổn định khắc phục nhiều hạn chế xảy mơ hình kỳ trước, đạt yêu cầu đặt ban đầu hồn thành tiến độ đặt ra, hình thành cấu trúc hồn thiện cho mơ hình Hướng phát triển Cần tăng tính thẩm mỹ cho mơ hình sản phẩm thiên xu hướng trang trí nội thất nhà Tối ưu phần cứng để cấu chuyển động mềm mại Tăng tốc độ vẽ độ xác giảm tiếng ồn Xem xét việc sử dụng vật liệu nhẹ tối ưu độ chắn cho bàn Tìm hiểu để nâng cấp chế độ vẽ thời gian thực thay vẽ web điện thoại thay mặt kính hình cảm ứng đặt mặt bàn 96 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Trịnh Chất - Lê Văn Uyển, Tính tốn thiết kế hệ dẫn động khí tập 1, tập 2, NXB Giáo Dục Việt Nam, 2010 [2] Trần Quốc Hùng, Giáo trình dung sai kỹ thuật đo, NXB Đại học quốc gia thành phố Hồ Chí Minh, 2013 [3] Nguyễn Tiến Dũng, Giáo trình đồ án chi tiết máy, NXB Khoa học kỹ thuật, 2012 [4] Phan Minh Thanh, Hồ Viết Bình, Giáo trình Cơ sở cơng nghệ chế tạo máy, Đại Học Quốc Gia Thành Phố Hồ Chí Minh, 2013 Nguồn khác [5] ORIENTAL MOTOR COPORTATION, Oriental Motor,link: https://www.orientalmotor.com/applications/index.html 97 PHỤ LỤC ESP32 import machine import time import network sta_if = network.WLAN(network.STA_IF) if not sta_if.isconnected(): print('connecting to network ') sta_if.active(True) sta_if.connect('Phat', '12345678') while not sta_if.isconnected(): pass print('network config:', sta_if.ifconfig()) import socket client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_address = ('192.168.119.38', 9005) client_socket.connect(server_address) i2c = machine.I2C(scl=machine.Pin(21), sda=machine.Pin(22), freq=10000) address = 0x08 while len(i2c.scan()) == 0: print("scanning ") first_try = while True: # Nhận liệu từ server print("ready to receive new data:") data = client_socket.recv(1024) str_data = data.decode('utf-8') str_data = str_data.replace(" ", "") print(str_data) i2c.writeto(address, str_data) print("send data through i2c") while first_try == 0: try: test = i2c.readfrom(address, 2) print("execption") print(test) if test == b'0' or test == b'1' or test == b'21' or test == b'20' or test == b'10' or test == b'11' : xv first_try = break except Exception as e: time.sleep(0.5) print("Error occurred:", e) while True: response = while response == 5: try: response = i2c.readfrom(address, 2) print("this is response 2") print(response) print(response[0]) print(response[1]) except Exception as e: time.sleep(0.2) print("Error occurred:", e) if response == b'1' or response == b'4': client_socket.send(response) print("case 1") break elif response == b'2' or response == b'3': client_socket.send(response) print("case 2") elif response == b'0': while(i2c.readfrom(address, 1) == b'1'): client_socket.send(response) print("case 3") break if response[0] == 48: print("pause state") elif response[0] == 49: if response[1] == 48: while response[1] == 48: try: response = i2c.readfrom(address, 2) print("this is response 3") print(response) time.sleep(0.2) except Exception as e: time.sleep(0.2) print("Error occurred:", e) xvi #else: print("sent") if response[1] == 49: client_socket.send(b'1') elif response[1] == 50: client_socket.send(b'2') break time.sleep(0.5) data = "" print("Received data:", data) ARDUINO #include #include #define pause_button #define start_button #define home_button 18 #define switch_x 52 #define switch_y 53 int state = 10; // continue -> button // pause -> button // home -> button // ok // not ok #define stepPin_x #define dirPin_x 11 #define enPin_x #define stepPin_y #define dirPin_y 12 #define enPin_y xvii int curr_x = 0; int desire_x = 0; int curr_y = 0; int desire_y = 0; int on_process = 0; int interupt_home_status = 0; void chuc_handle(int chuc_para){ int dv; if(state >= 10){ dv = state%10; state = chuc_para*10+dv; } else{ state = chuc_para*10 + state; } } void dv_handle(int dv_para){ int chuc; chuc = state/10; state = chuc*10+dv_para; } // Hàm receiveEvent gọi có liệu nhận từ master void receiveEvent(int byteCount) { String msg = ""; // Đọc liệu từ master lưu vào biến msg while (Wire.available()) { char c = (char) Wire.read(); msg += c; } // In liệu nhận từ master Serial.print("Received message: "); Serial.println(msg); handle_Json(msg); // Phản hồi lại liệu cho master //Wire.write("Response from Arduino"); } xviii // Hàm requestEvent gọi master yêu cầu liệu từ slave void requestEvent() { if(state == 0) Wire.write("00"); else if(state == 1) Wire.write("01"); else if(state == 10) Wire.write("10"); else if(state == 11) Wire.write("11"); else if(state == 12) Wire.write("12"); } void pauseInterrupt() { chuc_handle(0); } void startInterrupt() { //continue chuc_handle(1); } void homeInterrupt() { //chuc_handle(2); get_home(); chuc_handle(1); } //state not done void handle_Json(const String& Json){ StaticJsonDocument doc; DeserializationError error = deserializeJson(doc, Json); // Test if parsing succeeds if (error) { Serial.print(F("deserializeJson() failed: ")); Serial.println(error.f_str()); return; } String id = doc["id"]; String x = doc["x"]; String y = doc["y"]; desire_x = x.toInt(); desire_y = y.toInt(); Serial.println(id); xix Serial.println(x); Serial.println(y); Serial.println("======="); } void x_motor(){ // put your main code here, to run repeatedly: if(curr_x != desire_x){ dv_handle(0); while(state/10 == ){ } if(curr_x > desire_x){ digitalWrite(dirPin_x,HIGH); curr_x ; } else{ digitalWrite(dirPin_x,LOW); curr_x++; } for(int x = 0; x < 200; x++){ digitalWrite(stepPin_x, HIGH); delayMicroseconds(200); digitalWrite(stepPin_x, LOW); delayMicroseconds(200); } delay(200); dv_handle(1); } } void xy_axis(int dir, int dir_val, int motor_pulse){ digitalWrite(dir, dir_val); digitalWrite(motor_pulse, HIGH); delayMicroseconds(200); digitalWrite(motor_pulse, LOW); delayMicroseconds(200); } xx void draw(){ int operation_x = 0; int operation_y = 0; while(state/10 == 0){Serial.println(state);} for(int i = 0; i < 200; i++){ if(curr_x < desire_x){ xy_axis(dirPin_x, LOW, stepPin_x); operation_x = 1; } else if(curr_x > desire_x) { xy_axis(dirPin_x, HIGH, stepPin_x); operation_x = 2; } if(curr_y < desire_y){ xy_axis(dirPin_y, LOW, stepPin_y); operation_y = 1; } else if(curr_y > desire_y) { xy_axis(dirPin_y, HIGH, stepPin_y); operation_y = 2; } } delay(100); if(operation_x == 1) curr_x++; else if(operation_x == 2) curr_x ; if(operation_y == 1) curr_y++; else if(operation_y == 2) curr_y ; if(curr_x == desire_x && curr_y == desire_y && interupt_home_status == 0)dv_handle(1); else if (curr_x == desire_x && curr_y == desire_y && interupt_home_status == 1){ dv_handle(2); interupt_home_status = 0; } } void get_home(){ dv_handle(0); Serial.println(digitalRead(switch_y)); Serial.println(digitalRead(switch_x)); if(on_process == 1){ xxi desire_x = desire_y = 0; interupt_home_status = 1; } else{ while(digitalRead(switch_x) != || digitalRead(switch_y) != 0){ for(int i = 0; i< 200; i++){ if(digitalRead(switch_x) != 0) { xy_axis(dirPin_x, HIGH, stepPin_x); } if(digitalRead(switch_y) != 0) { xy_axis(dirPin_y, HIGH, stepPin_y); } } delay(100); } dv_handle(1); chuc_handle(1); desire_x = desire_y = curr_x = curr_y = 0; } } void setup() { Serial.begin(9600); Wire.begin(0x08); Wire.onReceive(receiveEvent); Wire.onRequest(requestEvent); pinMode(pause_button, INPUT_PULLUP); attachInterrupt(digitalPinToInterrupt(pause_button), pauseInterrupt, RISING); pinMode(start_button, INPUT_PULLUP); attachInterrupt(digitalPinToInterrupt(start_button), startInterrupt, RISING); pinMode(home_button, INPUT_PULLUP); attachInterrupt(digitalPinToInterrupt(home_button), homeInterrupt, RISING); pinMode(stepPin_x, OUTPUT); pinMode(dirPin_x, OUTPUT); pinMode(enPin_x, OUTPUT); digitalWrite(enPin_x, LOW); pinMode(stepPin_y, OUTPUT); pinMode(dirPin_y, OUTPUT); pinMode(enPin_y, OUTPUT); digitalWrite(enPin_y, LOW); xxii pinMode(switch_x, INPUT_PULLUP); pinMode(switch_y, INPUT_PULLUP); get_home(); } void loop() { //MAX 320 PULSE while(curr_x != desire_x || curr_y != desire_y){ on_process = 1; dv_handle(0); draw(); } on_process = 0; } xxiii S K L 0