ĐIỀU KHIỂN TỊNH TIẾN CON TRƯỢT

59 174 1
ĐIỀU KHIỂN TỊNH TIẾN CON TRƯỢT

Đ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

Trong nền sản xuất hiện đại ngày nay việc đưa máy móc cũng như các thiết bị công nghệ vào trong quá trình vận hành đã đần thay thế con người . Sử dụng các dây truyền công nghệ sản xuất đã tạo hiệu quả cũng như năng xuất lao động được tăng cao hơn rất nhiều .Trong dây truyền đó có sử dụng thanh trượt để đạt những mục đích cũng như yêu cầu sản phẩm . Xuất phát từ nhu cầu thực tiễn để điều khiển chính xác vị trí tịnh tiến của các chi tiết máy , học sinh – sinh viên cần thực hành trưc tiếp và nắm phương pháp điều khiển chính xác vị trí tịnh tiến của con trượt .

TRƢỜNG ĐẠI HỌC SƢ PHẠM HÀ NỘI ĐỒ ÁN TỐT NGHIỆP Tên đề tài: ĐIỀU KHIỂN CHÍNH XÁC VỊ TRÍ TỊNH TIẾN CON TRƢỢT Chuyên ngành : Sƣ phạm Kỹ thuật Điện Hà Nội - 2017 MỤC LỤC LỜI MỞ ĐẦU CHƢƠNG ĐỘNG CƠ MỘT CHIỀU 1.1 Tầm quan trọng động điện chiều 1.1.1 Vai trò động điện chiều 1.1.2 Ƣu nhƣợc điểm động chiều 1.2 Cấu tạo động điện chiều 1.2.1 Stato 1.2.2 Roto 1.3Nguyên lý hoạt động động chiều 1.4 Các phƣơng pháp thay đổi tốc độ động 1.4.1 Khái niệm chung 1.4.2 Phƣơng pháp thay đổi điện áp phần ứng 1.4.3 Phƣơng pháp thay đổi điện trở phần ứng 10 1.4.4 Phƣơng pháp thay đổi từ thơng kích từ 12 1.5 Đảo chiều quay động 13 1.5.1 Giới thiệu mạch cầu H 13 1.5.2 Nguyên tắc hoạt động chung mạch cầu H 14 1.5.3 Các dạng mạch cầu H 15 1.5.4 Ƣu nhƣợc điểm mạch cầu H 18 1.6 Tiểu kết 18 CHƢƠNG CHẾ TẠO MƠ HÌNH 20 2.1Mơ hình điều khiển trƣợt 20 2.1.1 Thanh trƣợt bi 20 2.1.2 Trục Vitme gối đỡ vòng bi 22 2.1.3 Khung, giá đỡ , công tắc hành chình thƣớc mét 26 2.1.4 Động 31 2.2 Mơ hình điều khiển 33 2.2.2 Khối hiển thị 33 2.2.3 Khối điều khiển động 34 2.2.4 Khối keypad khối đọc giá trị encoder 36 CHƢƠNG LẬP TRÌNH ĐIỀU KHIỂN 39 3.1 Lập trình Arduino Uno 39 3.1.1 Sơ đồ mạch 39 3.1.2 Lập trình Error! Bookmark not defined 3.2 Sản phẩm khảo sát thực nghiệm 42 KẾT LUẬN 44 TÀI LIỆU THAM KHẢO 45 DANH MỤC HÌNH ẢNH Hình 1.1 Cấu tạo chung động chiều Hình 1.2 Nguyên lý hoạt động động điện chiều Hình 1.3 Các đƣờng đặc tính động chiều điện áp phần ứng thay đổi 10 Hình 1.4 Đặc tính thay đổi điện trở phần ứng 11 Hình 1.5 Các đƣờng đặc tính thay đổi từ thông 12 Hình 1.6 Sơ đồ nguyên lý mạch cầu H dùng transitor 15 Hình 1.7 Sơ đồ nguyên lý mạch cầu H dùng Transistor P,N hay Fet 16 Hình 1.8 Cấu tạo hình dáng rơle thông dụng 17 Hình 1.9 Mạch cầu H dùng rơle 17 Hình 1.10 Nguyên lý hoạt động mạch cầu H 14 Hình 2.1 Cấu tạo chung trƣợt 20 Hình 2.2 Thanh trƣợt bi vng 21 Hình 2.3 Thanh trƣợt tròn có đế 21 Hình 2.4 Hình ảnh trƣợt trƣợt mơ hình thực tế 22 Hình 2.5 Trục vitme bi 23 Hình 2.6 Đai ốc 24 Hình 2.7 Hình ảnh trục vitme sử dụng mơ hình 24 Hình 2.8 Gối đỡ vòng bi 25 Hình 2.9 Hình ảnh gối đỡ vòng bi mơ hình 26 Hình 2.10 Thanh nhơm định hình 27 Hình 2.11 Hình ảnh thực khung 28 Hình 2.12 Tấm phíp cách điện 29 Hình 2.13 Các fomex 29 Hình 2.14 Tấm mica mơ hình 30 Hình 2.15 Cơng tắc hành trình mơ hình 30 Hình 2.16 Động điện chiều thực tế 31 Hình 2.17 Nguyên lý hoạt động encoder 32 Hình 2.18 Nguồn biến đổi AC-DC 33 Hình 2.19 LCD 34 Hình 2.20 Module L298 35 Hình 2.21 Keypad mơ hình thực 37 Hình 2.22 Board Arduino Uno 37 Hình 3.1 Sơ đồ nguyên lý toàn mạch 40 Hình 3.2 Sơ đồ mạch in tồn mạch 41 Hình 3.3 Sơ đồ mạch in 3D Error! Bookmark not defined Hình 3.4 Sơ đồ mạch thực tế Error! Bookmark not defined Hình 3.5 Sản phẩm thực tế 42 DANH MỤC BẢNG BIỂU Bảng 2.1 Các thông số chi tiết Arduino Uno Bảng 3.1 Khảo sát LỜI MỞ ĐẦU Lý chọn đề tài Trong sản xuất đại ngày việc đƣa máy móc nhƣ thiết bị cơng nghệ vào trình vận hành đần thay ngƣời Sử dụng dây truyền công nghệ sản xuất tạo hiệu nhƣ xuất lao động đƣợc tăng cao nhiều Trong dây truyền có sử dụng trƣợt để đạt mục đích nhƣ yêu cầu sản phẩm Xuất phát từ nhu cầu thực tiễn để điều khiển xác vị trí tịnh tiến chi tiết máy , học sinh – sinh viên cần thực hành trƣc tiếp nắm phƣơng pháp điều khiển xác vị trí tịnh tiến trƣợt Vì em lựa chọn đề tài “ Điều khiển xác vị trí tịnh tiến trƣợt “ Mục đích nhiệm vụ nghiên cứu Bộ thực hành điều khiển đƣợc xác vị trí tịnh tiến trƣợt Để đạt đƣợc mục đích nghiên cứu , nhiệm vụ đề tài phải giải vấn đề sau : +Chế tạo khung giá đỡ cho động , trục vitme +Chế tạo mô hình điều khiển trƣợt +Nghiên cứu chế tạo điều khiển tốc độ động +Nghiên cứu chế tạo điều khiển vị trí cho trƣợt Phƣơng pháp nghiên cứu phạm vi nghiên cứu Để thực nhiệm vụ đặt , em sử dụng phƣơng pháp nghiên cứu sau đây: - Phƣơng pháp nghiên cứu lý thuyết - Phƣơng pháp thực nghiệm - Phƣơng pháp chuyên gia Cấu trúc đồ án Ngoài phần mở đầu , kết luận, tài liệu tham khảo phụ lục đồ án gồm chƣơng : CHƢƠNG I ĐỘNG CƠ MỘT CHIỀU CHƢƠNG II CHẾ TẠO MÔ HÌNH CHƢƠNG III LẬP TRÌNH ĐIỀU KHIỂN CHƢƠNG ĐỘNG CƠ MỘT CHIỀU 1.1 Tầm quan trọng động điện chiều 1.1.1 Vai trò động điện chiều Ngày , dòng điện xoay chiều đƣợc sử dụng rộng rãi , song máy điện chiều tồn tại, đặc biệt động điện chiều - Trong đời sống ngƣời, động điện chiều đƣợc sử dụng phổ biến nhiều lĩnh vực : + Các phận khởi động ô tô, xe máy, máy kéo… + Các hệ truyền động có cơng suất nhỏ nhƣ quạt điện, máy say sinh tố, đông bơm nƣớc… + Lĩnh vực nghiên cứu, giảng dạy… - Trong công nghiệp , động điện chiều có vai trò đặc biệt quan trọng, đƣợc ứng dụng máy cắt kim loại , máy công cụ, giao thông vận tải hay thiết bị cầu trục ; máy ép, máy bơm, máy nghiền, máy cán… 1.1.2 Ưu nhược điểm động chiều - Ƣu điểm: + Động điện chiều có phạm vi điều chỉnh tốc độ rộng:Vì động điện chiều điều chỉnh tốc độ thông qua việc thay đổi , , nên tốc độ động đƣợc chỉnh tốc miền dƣới miền tốc độ định mức + Chất lƣợng điều chỉnh tốt , dễ điều chỉnh tốc độ : Do động điện chiều có đƣờng đặc tính dạng tuyến tính nên dễ dàng điều khiển tốc độ Đặc biệt với động điện chiều kích từ độc lập có phần kích từ phần ứng riêng biệt nên dễ dàng cho việc điều khiển Bên cạnh động điện chiều có khả tạo sai số tốc độ nhỏ , độ trơn điều chỉnh mịn , độ dài điều chỉnh rộng… + Ngoài ƣu điểm động điện chiều có cấu trúc mạch lực , mạch điều khiển đơn giản so với loại động khác Chính vậy, động điện chiều đƣợc sử dụng phổ biến ngành công nghiệp yêu cầu momen mở máy lớn yêu cầu điều chỉnh tốc độ xác, phẳng , phạm vi điều khiển rộng nhƣ ngành cán thép, hầm mỏ … - Nhƣợc điểm + Cần nguồn điện chiều + Bảo quản cổ góp phức tạp + Dễ sinh tia lửa điện + Giá thành cao 1.2 Cấu tạo động điện chiều Động điện chiều gồm phần chính: - Phần tĩnh: Stato - Phần quay: Roto Hình 1.1 Cấu tạo chung động chiều 1.2.1 Stato Đây phần đứng yên động ( phần tĩnh ) Phần tĩnh bao gồm: cực từ , cự từ phụ , gông từ phận khác a.Cực từ - Là phận sinh từ trƣờng - Gồm: lõi sắt cự từ dây quấn kích từ lồng ngồi lõi sắt cực từ + Lõi sắt làm thép kỹ thuật dày từ 0,5mm đến 1mm + Dây quấn kích từ đƣợc quấn từ dây đồng bọc cách điện cuộn dây đƣợc bọc cách điện thành khối tẩm sơn cách điện trƣớc đặt lên cực từ Các cuộn đƣợc nói nối tiếp b.Cực từ phụ - Đƣợc đặt cực từ dùng cải thiện đổi chiều - Lõi thép phụ làm thép khối dây quấn giống dây quấn cực từ - Cực từ phụ đƣợc gắn vào vỏ nhờ bulông c.Gông từ - Dùng làm mạch từ nối liền cực từ - Dùng làm vỏ máy d phận khác: Nắp máy , cấu chổi than - Cơ cấu chổi than gồm chổi than đặt hộp chổi than nhờ lò xo tì chặt lên cổ góp Hộp chổi than đƣợc cố định lên giá chổi than cách điện với giá Giá chổi than quay đƣợc để điều chỉnh vị trí chổi than chỗ - Nắp máy : Để đảm bảo an toàn điện cho ngƣời dùng Hình 3.1 Sơ đồ ngun lý tồn mạch 40 Hình 3.2 Sơ đồ mạch in toàn mạch hạ áp Mạch hạ điện áp từ 12 VDC xuống VDC để làm nguồn ni cho linh kiện Hình 3.3 Sơ đồ mạch in 41 Hình 3.4 Sơ đồ mạch in 3D 3.2 Sản phẩm khảo sát thực nghiệm 3.2.1 Sản phẩm Hình 3.5 Sản phẩm thực tế 42 3.2.2 Khảo sát thực nghiệm Khảo sát thực tế sản phẩm ta thu đƣợc bảng số liệu sau: STT KHOẢNG CÁCH NHẬP KHOẢNG CÁCH THỰC ( CM) ( CM ) THỜI GIAN THỰC HIỆN ( Giây ) 10 9.8 13 10 9.8 12.59 10 9.8 12.58 10 9.9 12.59 10 10 13 Bảng 3.1 Khảo sát Nhận xét: Qua khảo sát thực tế ta thấy lần thực chạy thử sản phẩm thời gian có chênh lệch khơng đáng kể Dựa vào (bảng 3.1) ta thấy khoảng cách nhập khoảng cách thực có chênh lệch tƣơng đối Sai số lớn lên tới 0.2 cm Bởi sai số phụ thuộc vào nhiều yếu tố nhƣ : sai số từ trục vitme , sai số thƣớc mét kẻ chƣa xác, lò xo cơng tắc hành chình ,… Lúc tốc độ động cao ổn định nhanh , có tăng tốc lúc đầu sau giảm ổn định , đến vị trí mong muốn dừng ( Trung bình milimet xấp xỉ 2000 xung.) Vậy thực tế có sai số mặt thời gian nhƣ khoảng cách nhƣng không q lớn Có thể thấy mơ hình thực tế tạm đạt đƣợc yêu cầu , mục đích đề ban đầu Cần đóng góp cải thiện hệ thống 43 KẾT LUẬN Qua trình thực đề tài “ Điều khiển xác vị trí tịnh tiến trƣợt ” rút đƣợc số kết luận nhƣ sau : Tiến hành chế tạo đƣợc mơ hình điều khiển vị trí trƣợt : có khung nhơm định hình ( kích thƣớc 70x20x20 cm) có trƣợt bi vng , trƣợt đƣợc kết nối với đƣợc nối với trục vitme để di chuyển đƣợc trƣợt; có động để điều khiển ; có keypad để nhập khoảng cách; LCD để hiển thị khoảng cách nhập vị trí trƣợt , encoder (phản hồi) Xử lý đƣợc khâu phản hồi Lập trình đƣợc Arduino Uno keypad Mơ hình điều khiển đƣợc gần xác tuyệt đối vị trí mà ta mong muốn , đáp ứng đƣợc yêu cầu đề tài đƣa 44 TÀI LIỆU THAM KHẢO [1] Giáo trình Lý thuyết điều khiển tự động , Ths Phạm Khánh Tùng Đại học Sƣ phạm Hà Nội [3] Giáo trình Điện tử cơng suất, Nguyễn Bính NSB Khoa học kỹ thuật (1999 ) [2] Arduino, http://arduino.cc 45 PHỤ LỤC Phần code cho Arduino #include #include const int CTHT = A5; const int NHAP_KC = 1; const int PID_VT = 2; const int PWM = A4; const int THUAN = A3; const int NGHICH = A2; int mode; int count_so; char KHOANG_CACH[4] = {"NUL"}; float khoang_cach_dat; float khoang_cach_thuc; int tocdo_PWM; const byte dir_encoder = 3; const byte interruptPin = 2; const int rs = 13, en = 12, d4 = 11, d5 = 10, d6 = 9, d7 = 8; LiquidCrystal lcd(rs, en, d4, d5, d6, d7); #include float pulse; void tinhEncoder(){ 46 if(digitalRead(dir_encoder) == 0){ pulse++; } else if(digitalRead(dir_encoder) == 1){ pulse ; } } void ViTriZeRo(){ if(digitalRead(CTHT) == LOW){ SETPWM(0); } else SETPWM(-80); } int count_PWM; void ham_PWM(){ sei(); count_PWM++; if(count_PWM 100){ count_PWM = 0; 47 } } const byte ROWS = 4; //four rows const byte COLS = 3; //four columns char hexaKeys[ROWS][COLS] = { {'1','2','3'}, {'4','5','6'}, {'7','8','9'}, {'*','0','#'} }; byte rowPins[ROWS] = {4, A1, A0, 6}; //connect to the row pinouts of the keypad byte colPins[COLS] = {5, , 7}; //connect to the column pinouts of the keypad Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS); void setup(){ // Serial.begin(9600); pinMode(CTHT,INPUT_PULLUP); pinMode(dir_encoder,INPUT_PULLUP); pinMode(interruptPin,INPUT_PULLUP); pinMode(PWM,OUTPUT); pinMode(THUAN,OUTPUT); pinMode(NGHICH,OUTPUT); 48 Timer1.initialize(1000); Timer1.attachInterrupt(ham_PWM); lcd.begin(16, 2); lcd.print("LOADING "); delay(1000); ViTriZeRo(); while(digitalRead(CTHT) == HIGH); pulse = 0; attachInterrupt(0, tinhEncoder, FALLING); lcd.begin(16, 2); lcd.setCursor(0,0); lcd.print("NHAP KHOANG CACH"); lcd.setCursor(6,1); mode = NHAP_KC; count_so = 0; tocdo_PWM = 0; } void SETPWM(int tocdo){ if(tocdo >= 0){ tocdo_PWM = tocdo; digitalWrite(THUAN,HIGH); digitalWrite(NGHICH,LOW); } 49 if(tocdo < 0){ tocdo_PWM = abs(tocdo); digitalWrite(THUAN,LOW); digitalWrite(NGHICH,HIGH); } } float kp = 10; float ki = 0.3; float kd = 0.001; int error,previous_error; float integral,derivative,P,I,D,OUT; char check_ok; int PID_khoang_cach_dat; char PID_control(){ khoang_cach_thuc = (pulse/1900); error = khoang_cach_dat - khoang_cach_thuc; if(error > 90) error = 90; if(error < -90) error = -90; integral = integral + (error)*0.001; derivative = (error - previous_error) / 0.01; if(integral > 30) integral = 30; if(integral < -30) integral = -30; if(error == 0){ 50 integral = 0; check_ok++; } else check_ok = 0; P = error * kp; I = integral * ki; D = derivative * kd; OUT = (int)(P + I + D); if(OUT > 90) {OUT = 90;} if(OUT < -90) {OUT = -90;} SETPWM(OUT); previous_error = error; if(check_ok >= 10){ return 1; } else return 0; } void loop(){ if(mode == NHAP_KC){ char customKey = customKeypad.getKey(); if((customKey != '*') && (customKey != '#')&& (customKey != 0) ){ if(count_so < 3){ 51 if(customKey){ KHOANG_CACH[count_so] = customKey; count_so++; lcd.print(customKey); } } } else if(customKey == '*'){ if(count_so == 1){ khoang_cach_dat = KHOANG_CACH[0] - 48; } else if(count_so == 2){ khoang_cach_dat = (KHOANG_CACH[0] - 48) * 10 + (KHOANG_CACH[1] - 48); } else if(count_so == 3){ khoang_cach_dat = ((KHOANG_CACH[0] - 48) * 100) + ((KHOANG_CACH[1] - 48) * 10) + (KHOANG_CACH[2] - 48); if(khoang_cach_dat >= 300) khoang_cach_dat = 300; } lcd.setCursor(0,0); lcd.print("GOTO ZERO "); lcd.setCursor(0,1); lcd.print(" "); 52 ViTriZeRo(); while(digitalRead(CTHT) == HIGH); pulse = 0; lcd.setCursor(0,0); lcd.print("K/C DAT : "); lcd.print((int)khoang_cach_dat); lcd.print(" mm "); lcd.setCursor(0,1); lcd.print(" VTHT : "); lcd.setCursor(13,1); lcd.print(" mm"); mode = PID_VT; } else if(customKey == '#'){ count_so = 0; lcd.setCursor(0,1); lcd.print(" "); lcd.setCursor(6,1); } } if(mode == PID_VT){ lcd.setCursor(10,1); lcd.print((int)(pulse/1900)); 53 if(PID_control() == 1){ lcd.setCursor(0,0); lcd.print("NHAP KHOANG CACH"); lcd.setCursor(0,1); lcd.print(" "); lcd.setCursor(6,1); mode = NHAP_KC; count_so = 0; } } } 54 ... tiễn để điều khiển xác vị trí tịnh tiến chi tiết máy , học sinh – sinh viên cần thực hành trƣc tiếp nắm phƣơng pháp điều khiển xác vị trí tịnh tiến trƣợt Vì em lựa chọn đề tài “ Điều khiển xác... tài “ Điều khiển xác vị trí tịnh tiến trƣợt “ đòi hỏi động phải điều chỉnh đƣợc tốc độ dƣới tốc độ định mức Động phải dễ điều khiển Khi hoạt động sai số nhỏ Chất lƣợng điều chỉnh phải tốt để điều. .. thấy ổn định Và nhƣ thấy cần tín hiệu điều khiển nhƣng thực tế cần tín hiệu điều khiển điều khiển đƣợc Cho nên kiểu dạng đƣợc sử dụng nhiều lĩnh vực điều khiển Hình 1.8 Sơ đồ nguyên lý mạch cầu

Ngày đăng: 11/05/2018, 14:49

Từ khóa liên quan

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

Tài liệu liên quan