View Single Post
Old 04-05-2012, 12:07 PM   #1
JackSanji
Đệ tử 1 túi
 
Tham gia ngày: Feb 2012
Bài gửi: 13
:
Cần giúp đỡ về điều khiển động cơ

Chào các anh chị. Em đang làm bài tập lớn đề tài điều khiển quạt, có chút thắc mắc muốn nhờ mọi người giúp đỡ đó là :
em muốn điều khiển động cơ phụ thuộc vào nhiệt độ t đọc đc từ LM35.nhiêt độ hiển thị trên led 7 đoạn, và thời gian thực hiển thị trên LCD. Nếu t>40 thì bắt đầu quay, tốc độ tăng dần khi nhiệt độ tăng và động cơ đạt tốc độ max khi t>=60 độ.

Code:
t=(float)read_adc();              //update nhiet do
      t=t*100/204;
      if((t>0)&&(t<40)) {duty=0;};
     if((t>=60)&&(t<=99)) {duty=624;};
      if((t>=40)&&(t<60)) {duty=((t-40)*15+312);};
vấn đề của em là khi mô phỏng bằng proteus thì khi tăng lm35 lên >=60 độ thì mạch ok, còn khi dưới 60 độ thì thời gian thực trên LCD chạy không đúng nữa, có khi phải đến 3 hay 4s thì mới nhảy đc lên 1s. em nghĩ cái này có thể xung đột với thời gian update từ DS1307 lên LCD, nhưng chưa biết lỗi ở đâu.
em gửi sơ đồ mô phỏng Proteus để mọi người xem giúp e với ạ.
thanks mọi người nhiều!
File Kèm Theo
File Type: rar BTL.rar (28.9 KB, 15 lần tải)
__________________
Tất cả vì tương lai con em chúng ta!

thay đổi nội dung bởi: JackSanji, 04-05-2012 lúc 03:55 PM. Lý do: sửa code
JackSanji vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn