PIC Vietnam

Go Back   PIC Vietnam > Robotics > Thực hành

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Thực hành Bắt đầu làm một robot như thế nào? Mẹo vặt? Kỹ thuật? Công nghệ?... Hãy bắt tay vào việc...

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 04-11-2006, 05:58 PM   #11
minhcuong
Đệ tử 2 túi
 
minhcuong's Avatar
 
Tham gia ngày: Jul 2005
Bài gửi: 26
:
Cập nhật file tạo S-Curve

Phiên bản này tốt hơn. Viết rõ ràng, và cẩn thận hơn. Đổi lại extension *.m để chạy trong Matlab.

các bạn có thể thay đổi thông số của DCMotor vào các parameter phía trên.

Xem trong Attach là S-Curve thực sự của motor tracking theo S-Curve tạo tuần tự.

Phương pháp của tôi rất đơn giản, tất nhiên không thể là best được vì tôi chỉ dùng duy nhất một vòng hồi tiếp vị trí:

Code:
error = ref_pos - enc_pos;
PWM = Kp*error +  Kd*(error - prev_error);
tải đoạn chỉnh cuối cùng Tail Zone:
có thêm thêm Iterm

Code:
if (error<prev_error){
   Intergrate_error -= prev_error;  //Anti windup
} else {
   Intergrate_error += prev_error;
}

if (Intergrate_error>threshold){  //threshold chọn từ 0.1~0.5 maximum của //PWM
Intergrate_error = threshold; 
}
PWM = Kp*error +  Kd*(error - prev_error) + Ki
Hình Kèm Theo
File Type: jpg SCurve.jpg (124.3 KB, 141 lần tải)
File Kèm Theo
File Type: txt SCurveGenerate.txt (5.0 KB, 130 lần tải)

thay đổi nội dung bởi: minhcuong, 04-11-2006 lúc 09:01 PM.
minhcuong vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 03:34 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam