You are on page 1of 15

XỬ LÝ GIÁ TRỊ NHẬN TỪ GUI

- Thiết Lập các giá trị cơ bản cho UART và ngắt


XỬ LÝ GIÁ TRỊ NHẬN TỪ GUI
- Khai báo các biến nhận giá trị từ GUI
XỬ LÝ GIÁ TRỊ NHẬN TỪ GUI
- Nhận từng kí tự cho tới khi gặp kí tự kết thúc là 0x0a
XỬ LÝ GIÁ TRỊ NHẬN TỪ GUI
- Phân loại các giá trị nhận vào
XỬ LÝ GIÁ TRỊ NHẬN TỪ GUI
- Xử lý các giá trị nhận về thành dữ liệu sử dụng :
XUẤT GIÁ TRỊ ĐỌC VỀ TỪ ENCODER
- Sau khi nhận giá trị đã xử lý từ encoder , Xử lý sang chuỗi kí tự và xuất ra Gui Bằng UART
Module PWM
- Sử dụng bộ PWM Gen 2  PWM1, tương ứng PF1 (M1PWM5)
- Sử dụng Clock PWM chia 1 (div 1)
- Timer PWM đếm xuống, kiểu không đồng bộ
- Chu kì xung PWM = 20KHz
- Duty cycle: Ton/T = ratio = (tốc độ u(k)/ tốc độ tối đa), ở đây tốc độ tối
đa 6000rpm.
- Tốc độ u(k) được tính thông qua công thức bộ PID như sau:
Code PWM:
Module QEI:
- Index: khi quay 1 vòng, thì index lên 1 đơn vị
- Kênh A: 100
- Kênh B: 100
- Đọc chiều
- Đọc vận tốc velocity rpm.
- Sử dụng cả kênh A và kênh B để xác định chiều.
- Mode x4: kết hợp cả kênh A và kênh B : lấy cạnh lên và cạnh xuống của
A và B
- A và B cách nhau 90 độ
Code Module QEI:
Code Module QEI:
PID
Công thức tính u(k):

 Thời gian lấy mẫu: Ts = 0.01s


Code module PID
Code module PID
Main.c

You might also like