Nhiệt độ lò sấy, Điều khiển đèn PWM + Nút nhấn + Led đơn, Lập trình Pic

nhiet-do-lo-say-dieu-khien-den-pwm-nut-nhan-trang-thai-led-don-lap-trinh-pic
Nhiệt độ lò sấy được sử dụng trong các hệ thống nhiều trong nông nghiệp, công nghiệp. Hệ thống bao gồm nhiệt độ, độ ẩm, quạt để thoát khí và bóng đèn gia nhiệt nhằm tạo giá trị nhiệt độ hoặc độ ẩm thích hợp, nhiệt độ lò sấy được ứng dụng rộng rãi như sấy thức ăn, thực phẩm, hoặc sấy khô vật dụng thay vì dùng ánh nắng mặt trời hoặc một vài tác động khác. Sử dụng hệ thống sẽ giúp tiết kiệm được sức lao động, độ chính xác cao và hoạt động liên tục 24/24.

Mua linh kiện điện tử tại Điện tử Nhật Tùng

Liên hệ làm mạch  Phone: 0967.551.477 Zalo: 0967.551.477 Email: dientunhattung@gmail.com Địa Chỉ: 171/25 Lê Văn Thọ, P8, Gò Vấp, Tp HCM Chi tiết: Nhận làm mạch và đồ án Điện tử  
Khóa học Vi điều khiển có phí Hình thức học: Video hoặc Kèm trực tiếp ===>>>>  Kích vào hình để được biết thêm chi tiết khóa học lập trình vi điều khiển online

Tải File bài giải

Pass giải nén: Huynhnhattung.com
===>>>   Nếu bạn chưa có phần mềm giải nén:

Hướng dẫn Tải và Cài đặt phần mềm giải nén Winrar

Video Nhiệt độ lò sấy, Điều khiển đèn PWM + Nút nhấn + Led đơn

Blog Nhiệt độ lò sấy, Điều khiển đèn PWM + Nút nhấn + Led đơn

Đề bài nhiệt độ lò sấy:

nhiet-do-lo-say-dieu-khien-den-pwm-nut-nhan-trang-thai-led-don-lap-trinh-pic-de-bai

Bài giải nhiệt độ lò sấy:

Phần cứng chương trình nhiệt độ lò sấy:

  • Đề yêu cầu sử dụng 3 nút nhấn điều khiển cho phép hoặc không cho phép là Start/Stop, chạy cấp độ thấp là LOW, chạy cấp độ cao là HIGH. Đồng thời báo trạng thái lên 3 led đơn để dễ dàng quan sát.
  • Đề yêu cầu sử dụng điều chế độ rộng xung PWM với duty thay đổi. Khi tạo xung CCP PWM nếu sử dụng hổ trợ từ phần mềm CCS hoặc từ nhà sản xuất thì chỉ có thể tạo được thông qua 2 chân CCP1CCP2. Ngoài ra người lập trình vẫn có khả năng tạo xung từ bất kể chân I/O nào có thể sử dụng delay, timer0, timer1,… Theo đề chân tạo xung bắt buộc vào chân RC1 đồng nghĩa với việc tạo xung bằng CCP2 để điều khiển tốc độ quay của quạt nhằm giảm nhiệt độ hệ thống.
  • Sử dụng dao động ngoài thạch anh 8M gắn vào chân OSC1 OSC2. Khi làm phần cứng thì nhớ gắn vào.
  • Các linh kiện chính cần sử dụng tham khảo tại.
    Thông số kỹ thuậtMua Linh kiện
    Pic16F887Pic16F877
    Led đơnLed đơn
    Điện trởĐiện trở
    Nút nhấnNút nhấn
    Thạch anhThạch anh
    Quạt 12vQuạt 12v
    Module L298Module L298
     
nhiet-do-lo-say-dieu-khien-den-pwm-nut-nhan-trang-thai-led-don-lap-trinh-pic

Phần mềm nhiệt độ lò sấy:

Khai báo thư viện tiền sử lý của nhiệt độ lò sấy:

  • Vi điều khiển hiện tại mình đan dùng là Pic16F887
  • Hiện dùng thạch anh ngoài và thạch anh ngoài khai báo 8M bằng lệnh #Fuses    hs     và    #delay(clock=8M).  
  • Định nghĩa chân: tùy theo chức năng của chân mà tên định nghĩa được bám sát vào nội dung đan thực hiện.
  • Tên khai báo biến phụ thuộc vào chức năng để khai báo cho phù hợp. 
nhiet-do-lo-say-dieu-khien-den-pwm-nut-nhan-trang-thai-led-don-lap-trinh-pic-khai-bao

Chương trình con kiểm tra nút nhấn nhiệt độ lò sấy:

Nút nhấn có nhiều hơn một chức năng, vì mỗi lần nhấn nút sẽ thay đổi giá trị biến tt một đơn vị từ đó việc lập trình phải sử dụng chương trình chống dội nút nhấn.
  • Đầu tiên kiểm tra có nhấn nút không, nếu có thì sẽ trả về mức 0 theo thiết kế của phần cứng, nếu có thì chống dội, thời gian dội phím ít nhấn 20ms, tùy vào từng nút nhấn mà thời gian dội sẽ khác nhau, nhưng ít nhấn vẫn là 20ms.
  • Kiểm tra lại lần nữa nếu vẫn còn giữ phím thì cho phép đảo trạng thái biến tt, nếu giá trị tt=1 thì khởi tạo duty =320 tức là 40%, đồng thời bật led mức LOW và tắt mức HIGH vì yêu cầu đưa ra khi cho phép thì tiến hành cho quạt quay ở 40%.
  • Kiểm tra nếu chưa nhả phím thì làm nhiệm vụ chờ nhả, vòng lặp While chỉ thoát khi điều kiện sai, vậy nếu còn nhấn ngõ vào luôn bằng 0.
nhiet-do-lo-say-dieu-khien-den-pwm-nut-nhan-trang-thai-led-don-lap-trinh-pic-nut-nhan

Chương trình chính thực hiện toàn bộ hoạt động của vi điều khiển dùng nhiệt độ lò sấy

  • Bắt đầu chương trình chính phải khởi tạo ngõ vào ra cho vi điều khiển. Một chân của vi điều khiển thì làm nhiệm vụ I/O vì thế phải khỏi tạo. Port C điều khiển tốc độ quay của quạt tức đưa tín hiệu từ Vi điều khiển ra ngoài nên khởi tạo là 0x00. Port B nhận tín hiệu từ nút nhấn ở chân RB5, RB6, RB7 và xuất tín hiệu cho led đơn ở chân RB0, RB1, RB2 nên khởi tạo là 0x0f
  • Khi sử dụng điều chế độ rộng xung do vi điều khiển hổ trợ thì sử dụng Timer2. Cách tính: Chu kỳ yêu cầu T=400us => T=0.4ms. PR2 = 0.4ms/((1/4M)*4*4)-1 = 199. Sử dụng bộ chia 16. Nếu sử dụng bộ chia 1 hoặc 4 thì giá trị vượt 255 không thể đếm cho timer2. Duty = 0.4ms/((1/4M)*4) = 800. Tức giá trị cực đại của duty=800. Từ đó suy ra 40%, 60%, 0% theo yêu cầu đã đặt ra.
  • Kiểm tra nút nhấn Start/Stop có được nhấn không, nếu có nhấn thì tt = 1 tức cho phép quạt quay với tốc độ duty = 40%. Khi cho phép led Start/stop sáng đồng thời kiểm tra hai nút nhấn LOWHIGH có được nhấn không, nếu có nhấn thì gán giá trị 40%60% theo yêu cầu đề bài đã đặt ra và bật led đơn LOW, HIGH theo thứ tự nhấn nút. Ngược lại nếu tt=0 tắt hệ thống bằng cách cho duty=0tắt các led đơn để báo trạng thái hệ thống đã tắt.

nhiet-do-lo-say-dieu-khien-den-pwm-nut-nhan-trang-thai-led-don-lap-trinh-pic-chuong-trinh-chinh

Chúc các bạn có một kỳ thi thành công…!!!

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *