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...

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 22-08-2006, 09:47 AM   #1
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf
Các bạn tiếp tục đưa các bản thiết kế của mình về mạch cầu H lên mạng để anh Nam hỗ trợ các bạn trong việc tính toán.

Thông số động cơ của mình, ai chưa nắm thì đưa các thông tin có thể có được lên mạng, để chúng ta cùng tìm cách ước lượng. Việc này rất cần thiết cho việc thiết kế bộ điều khiển.

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-08-2006, 11:04 AM   #2
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf

Đây là sơ đồ khối điều khiển, và mục tiêu của chúng ta đang là thiết kế mạch cầu H. Phần thiết kế mạch điều khiển PIC, và lập trình PID chúng ta sẽ tiến hành sau.

Nhìn vào hình này, các bạn đã thấy rõ ràng rằng chúng ta đã làm xong phần 1, ở phía trên, bao gồm động cơ, encoder và tải. Bây giờ việc tiếp theo là làm phần mạch cầu H.

Mọi người cố gắng xúc tiến công việc thật nhanh.

Chúc vui.
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-08-2006, 11:36 AM   #3
falleaf
PIC Bang chủ
 
falleaf's Avatar
 
Tham gia ngày: May 2005
Bài gửi: 2,631
:
Send a message via Yahoo to falleaf

Hình này giúp các bạn từ các khối phần cứng liên hệ cụ thể với mô hình điều khiển một cách trực quan.

Từ trước tới nay, điều khó khăn trên các lớp học, chính là việc dạy điều khiển chỉ có các sơ đồ khối, không hiểu sơ đồ khối đó là cái gì, làm cái gì?!! Thực sự F cũng đã gặp khó khăn khi cố gắng hình dung ra nó là cái gì, và mình phải làm nó như thế nào?

Tất nhiên, mô hình điều khiển này chưa hoàn toàn đầy đủ, chúng ta sẽ phải làm nhiều thứ khác nữa, nhưng từ mô hình này, các bạn thấy rất đơn giản.

Khối điều khiển PID, chính là cái card PIC16LF877A của các bạn, phần mạch cầu H là phần khuếch đại, phần động cơ, tín hiệu ra là góc quay hay vận tốc góc của động cơ, được đọc về bởi encoder, đây là ngõ hồi tiếp tín hiệu. Giá trị này sau đó được so sánh với giá trị đặt. Dựa trên sai số giữa giá trị đặt (giá trị mong muốn = vận tốc hoặc vị trí), chúng ta sẽ phải xác định xem cần phải tăng hay giảm độ rộng xung PWM trước khi đưa vào mạch cầu H.

Nếu như giá trị đọc về của encoder nhỏ hơn giá trị đặt, như vậy rõ ràng chúng ta phải tăng PWM. Như vậy, tăng PWM là tăng bao nhiêu? Hoặc khi giá trị đặt lớn hơn giá trị đọc về của encoder, thì chúng ta phải giảm PWM, như vậy giảm bao nhiêu?

Bộ điều khiển PID giúp chúng ta trả lời câu hỏi này. Khi có giá trị hồi tiếp, giá trị đặt, và biết được sai số của chúng ở từng thời điểm, chúng ta sẽ điều khiển được tín hiệu điều khiển để nó tăng giảm bao nhiêu là hợp lý.

Như vậy, mọi bộ điều khiển tự động (automatic controller) đều làm công việc này, tăng giảm bao nhiêu thì vừa.

Những bộ điều khiển phức tạp, làm nhiều việc hơn, vì nó có thể có nhiều ngõ vào, nhiều ngõ ra, nhiều ngõ hồi tiếp hơn, nhưng suy cho cùng, nói một cách nôm na, cũng chỉ là tăng hay giảm bao nhiêu thì vừa.

Nếu như chúng ta dùng cách điều khiển liệt kê, vd: -1000 xung, -999 xung, - 998 xung.... 0 xung, 1 xung, ... 999 xung, 1000 xung... Chúng ta liệt kê hết tất cả các giá trị sai lệch này ra, và áp cho nó một giá trị điều khiển (độ rộng PWM phù hợp với từng giá trị sai lệch), thì chúng ta thực sự không cần bộ điều khiển PID làm gì nữa.

Nhưng vấn đề chúng ta cần bộ điều khiển PID để biết xem được nếu -1000 xung sai lệch thì giá trị đó bằng bao nhiêu? Đó là điểm thứ nhất. Điểm thứ hai, về mặt lập trình, chúng ta không thể ngồi liệt kê hết từng trường hợp như vậy. Thực chất, trong một số trường hợp điều khiển, giả sử như chỉ có khoảng 100 trường hợp, nếu mà cho tính toán PID với số thực, quả thực rất lâu, người ta có thể tính toán ra ngoài trước, và khi lập trình cho sản phẩm, người ta đưa bảng tra vào luôn. Khi đó đáp ứng sẽ rất nhanh, vì nó không phải tính toán bộ điều khiển PID nữa.

Nhưng nói như vậy là F nói một cách hình dung, cho bộ điều khiển P thôi, không phải PID, vì điều khiển PID còn liên quan đến độ sai lệch trước đó, và độ sai lệch sau đó. Nếu đem 100 trường hợp, và liệt kê, thì P sẽ là 100 trường hợp, I sẽ 100 trường hợp, D sẽ 100 trường hợp. Tổ hợp của các trường hợp này là bao nhiêu?

Thực sự F không dám tính toán, và không dám liệt kê.

Đó là lý do vì sao người ta phải dùng bộ điều khiển mà không dùng phương pháp liệt kê.

Đôi nét dạo đầu và những khái niệm nôm na về bộ điều khiển như vậy, F không khuyến khích mọi người tập trung vào phần điều khiển vào lúc này, nhưng F biết mọi người cũng đang đọc từ từ về điều khiển PID, nhất là những người đang theo dõi luồng này mà không làm mô hình, vì họ muốn học dạng lý thuyết, hoặc không có thời gian, hoặc điều kiện tài chính để tham gia làm mô hình... Điều này sẽ giúp cho các bạn hình dung một cách trực quan hơn những gì chúng ta đang làm, và một chút gì đó về lý lẽ để các bạn cảm thấy dễ hiểu hơn về vấn đề điều khiển.

Ở đây, chúng ta chỉ đang tiếp cận với Automatic Control, chứ chúng ta chưa tiếp cận đến Intelligent Control, cho nên F chỉ đưa khái niệm tăng giảm ngõ ra như trên, để tránh tình trạng như trong phần Kalman, có bạn nghiên cứu về vấn đề này, sẽ vào thảo luận rằng khái niệm hình dung này không chính xác. Thực sự là không có cái gì hoàn toàn chính xác, theo F nghĩ vậy. Cho nên, làm thế nào để hiểu được nó một cách đơn giản nhất, truyền đạt lại nó một cách đơn giản nhất, thảo luận với nhau một cách đơn giản nhất, đó là cách mà chúng ta sẽ làm và xây dựng ở đây.

Chúc vui
falleaf vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 22-08-2006, 11:31 PM   #4
Hieu98DT
Đệ tử 3 túi
 
Tham gia ngày: Feb 2006
Bài gửi: 50
:
Chào cả nhà !
Mấy hôm nay bận đi làm nên đến hôm nay Hiếu mới post được mấy cái tải cho các bạn xem được.
Hình Kèm Theo
File Type: jpg tai-tron.jpg (35.0 KB, 159 lần tải)
File Type: jpg tai-vuong.jpg (34.6 KB, 90 lần tải)
File Type: jpg tai-bat ky.jpg (36.0 KB, 83 lần tải)
File Type: jpg Capture1.jpg (44.5 KB, 115 lần tải)
File Type: jpg Capture2.jpg (43.9 KB, 69 lần tải)
File Type: jpg Capture3.jpg (43.9 KB, 77 lần tải)
Hieu98DT vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


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à 02:58 PM.


Đượ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