Mạch đo tốc độ động cơ hiển thị LCD Code Asembly

Chia sẻ với các bạn mạch đo tốc độ động cơ dùng AT89C52, hiển thị bằng LCD16x2
- Đặt chính xác tốc độ mong muốn
- Giá thành thấp
- Nhiều tùy biến (có thể phát triển để tích hợp vào các hệ thống khác)




1. ​Nguyên lý: Có hai nguyên lý cơ bản đo trực tiếp tốc độ quay như sau
(ngoài ra còn một số phương pháp gián tiếp khác)
xem file Nguyên lý

2 – Lựa chọn: 
Do yêu cầu đặt ra là: 
- Điều khiển cho nhiều cơ cấu điều tốc khác nhau,
- Thời gian đáp ứng nhanh, 
- Tốc độ động cơ vừa phải (200Vg/Ph ~ 1200Vg/Ph) 
=> nên chọn phương án đo (đếm) chu kỳ.
(tính toán sơ bộ KQ đo bằng bảng tính)
· Do không phải dân Toán, nên phải tính thủ công, hơn nữa bộ VXL 89xx, không có số thực !
Lệnh ĐK ra sẽ là dạng xung (rơ le / khởi động từ), độ rộng xung, thời gian trễ có thể đặt trước bằng các SW (điều chỉnh theo thực tế khi lắp đặt để đạt KQ tối ưu)

3 – Sơ đồ nguyên lý mạch điện & PCB (rất tiếc là không tìm thấy file vẽ đâu cả, nên đành mô tả bằng chức năng và Port - Bạn nào cần vẽ contact: echipkool.com@gmail.com )
- Vi xử lý AT89C52, với thạch anh 12MHz
- Đầu vào đếm xung: dùng cảm biến tiệm cận OMRON, đầu ra xung (có thể dùng photo diode dạng chữ U)
Xung nhận được đưa vào P3.2 (Ngắt ngoài INT0)

3.1 - Phần hiển thị LCD: 
Data 0~7 - Port P0 (0~7)
RS P3.7
RW P3.6
CE P3.5

3.2 – Phần điều khiển (phím bấm)
Nút tăng tốc độ P1.1
Nút giảm tốc độ P3.3

3.3 Phần nhận xung – có zener bảo vệ quá áp
INT0 P3.2

3.4 – Phần Lệnh ra (Tăng/ giảm tốc độ) – Qua tầng đệm, ĐK rơ le
Lệnh Tăng P3.0
Lệnh Giảm P3.1

3.5 – Phần cài đặt (Các SW gạt đặt chế độ)
+ Đặt số răng P2.0 ~P2.6 (Max = 128 răng), chỉ đặt 1 lần cho 1 động cơ cụ thể
+ Đặt TG trễ trước khi ra lệnh (0.6s, 1.2s, 2.5s, 5s)
Bit0DLP1.2
Bit1DLP1.3
+ Sai số cho phép (1%, 2%, 5%, 10%)
Bit0PC P1.4 
Bit1PC P1.5
· dưới ngưỡng sai số này, sẽ ko ra lệnh 
+ TG duy trì lệnh với 10% sai số (0.6s, 1.2s, 2.5s, 5s)
Bit0CTP1.6
Bit1CTP1.7
+ Ngưỡng sai số để duy trì lệnh (>15%, >30%)
Bit30 P2.7
· Khi sai số tốc độ lớn hơn ngưỡng này, lệnh ra sẽ duy trì liên tục

3.6 – Nguồn nuôi: dùng biến áp 220/12, cầu, lọc và 7805

4 – Phần mềm 89C52
Giải thích cấu trúc cơ bản của chương trình:
- Ngắt ngoài INT0, nhận biết xung: với xung thứ nhất sẽ bắt đầu đếm, với xung thứ 2=dừng đếm. (số đếm x T xung = chu kỳ T)
- Timer T0, xử dụng như một bộ đếm 16bit (đếm xung)
- Timer T1, xử dụng như một bộ định kỳ kiểm tra, nhận biết tốc độ quay quá chậm hoặc động cơ đang dừng (do không nhận được xung ngắt ngoài)
- và các thủ tục (function) khác như, so sánh, nhận lệnh, kết xuất LCD v.v.
(code đầy đủ trong file attach, dịch bằng MBUG.EXE)
· Nhược điểm của ngôn ngữ Assembler là hơi rối (vì ko có cấu trúc rõ ràng)
· Ưu điểm là giúp hiểu biết “tường tận” về cấu trúc VXL, và đôi lúc CT nhanh hơn
Kết quả: 
Đã sử dụng ổn định trong nhà máy SX cao su (có rất nhiều động cơ cần đồng bộ tốc độ)
Sai số tốc độ trong phạm vi cho phép.

Chip đã vẽ lại mô phỏng + Biên dịch lại code Asem các bạn download về chỉ việc dùng nhé.
( Mediafire)
Khi nhấn nút "Tải Về Máy", bạn sẽ vào trang quảng cáo, vui lòng chờ 5 giây. Nút  hiện ra ở góc phải phía trên, nhấn vào để đến trang download

Nguồn yeuthichdientu (codientu.org)
In bài này
Previous
Next Post »

1 comments:

Click here for comments
Unknown
admin
28/11/17 ×

code đâu ad. gửi mail cho e đc k ạ. lehoangtrongnhan1997@gmail.com

Congrats bro Unknown you got PERTAMAX...! hehehehe...
Reply
avatar

Bạn đọc hãy giúp chúng tôi xây dựng cộng đồng bằng cách để lại bình luận, chúng tôi luôn đón nhận mọi ý kiến của các bạn:
» Bình luận nghiêm túc và không chứa các liên kết quảng cáo.
» Vui lòng không Spam nhận xét với mọi hình thức.
» Rất mong bạn đề tên cho nhận xét của chính mình - Bằng cách chọn vào Tên/URL và điền tên bạn vào (Phần URL có thể bỏ trống ).

- Bạn có thể chèn Link nhạc (NCT), video(Youtube),Hình ảnh vào comment bằng cú pháp:
+ [youtube] Link video Youtube [/youtube].
+ [img] Link ảnh( định dạng PNG, JPG,GIF) [/img]
+Chèn link liên kết: <a href="LINK" rel="nofollow">Name</a>
-Bạn copy mã bên cạnh biểu tượng chèn vào nhận xét để bày tỏ cảm xúc!! ConversionConversion EmoticonEmoticon

       Mạch Khóa Số Điện Tử Mạch Đếm Sản Phẩm Mạch Đèn giao thông Ngã Tư Mạch Trái Tim Final Mạch Trái Tim Final Mạch Trái Tim I Love U

THƯ MỤC KHO TÀI LIỆU MIỄN PHÍ ECHIPKOOL

Code 8051 - ASM Code 8051 - C Code AVR - C Code led sao băng Code PIC - C Điện tử cơ bản điện tử viễn thông Đo Nhiệt Độ DS18B20 + LCD Đo Nhiệt Độ LM35 + LCD Đo Nhiệt Độ LM35 + Led 7 thanh Đo tốc độ động cơ Động cơ robo Ebook Đại Học ebook điện tử Ebook đồ án Học Orcad Học Protues Hồng ngoại Lập Trình 8051 Lập Trình AVR lập trình c++ Lập Trình Led Quảng Cáo lập trình PIC Lập trình Robot Lập trình VHDL Lcd16x2 Led Clock Led Quay Led RGB Mạch 7seg Mạch Amply.Mạch Loa Mạch Cảm Biến Mạch cube Mạch Đếm Sản Phẩm Mạch điện cơ bản Mạch điện hay Mạch Điện Ứng Dụng Mạch đọc file nhạc MP3 dùng Atmega 8 Mạch Động Cơ Mạch đồng hồ Mạch đồng hồ LCD Mạch đồng hồ Matrix Mạch giao thông Mạch in Mạch khóa số điện tử Mạch Led đơn Mạch Led Quảng Cáo Mạch Led Vumeter Mạch Ma trận Phím Mạch Matrix Mạch nạp Mạch nguồn Mạch Nút Bấm Mạch RS232 Mạch RS485 Mạch thu phát Mạch tổ hợp MSI Mạch trái tim Mạch truyền điện không dây Mạch Vi điều khiển Module Bluetooth Module Sim Module Sim548 Motor Nhiệt độ - Độ ẩm oscilloscope Phần mềm điện tử Phần Mềm Diệt Viruts Phần Mềm Hay Phần Mềm Led Quảng Cáo Phần mềm vi tính robocon Rule robocon Sạc Acquy Sản Phẩm Thương Mại Sáng tạo Smart Home Tài liệu Điện Tử Tranzitor Tụ điện TUT - 8051 - ASM TUT - 8051 - KeilC UART Ứng Dụng Led Quảng Cáo Ứng dụng USB USB TO COM Vi điều khiển - Ứng dụng Vi mạch số VOM Wifi ESP8266