.Tổng quan về hệ thống điều khiển

Một phần của tài liệu Nghiên cứu, thiết kế và điều khiển hệ thống rối nước tự động (Trang 71)

Trong phần này, công việc liên quan đến việc thiết lập khả năng viễn thơng của robot được trình bày. Chúng tơi sẽ thảo luận về cách tiếp cận dữ liệu đầu vào, giao tiếp giữa hai hệ thống và các chế độ tương tác khác nhau của người dùng. Một hệ điều hành từ xa bao gồm hệ thống chính (Master) và hệ thống con (Slave) và mạng giao tiếp giữa chúng. Cũng được đề cập là hệ thống nhận dạng, xử lý tín hiệu hình ảnh, phục hồi tốc độ hình ảnh mỗi giây để mơ phỏng chuyển động của con người và gửi tín hiệu đến Slave. Sau khi nhận được tín hiệu qua cảm biến Kinect từ robot, thuật toán sẽ thực hiện thuật tốn quỹ đạo của máy chủ và sau đó chuyển dữ liệu từ máy tính qua sóng điện từ từ vi điều khiển ở phía Slave. Bộ vi điều khiển trong Slave sẽ tiến hành lọc dữ liệu, loại bỏ nhiễu tín hiệu mới được truyền để cung cấp xung PWM cho hoạt động nơ lệ. Về phía Master sẽ gắn thiết bị với lực phản ứng lực cảm ứng của môi trường được gửi bởi Slave.

6.2.Thiết kế hệ thống điều khiển trung tâm

Với hệ thống điều khiển trung tâm, với dự án này, nhóm chỉ nghiên cứu điều khiển các cánh tay địn của hệ thống để điều khiển các con rối, các chuyển động của bệ khung sẽ không được xét tới. Với việc điều khiển động cơ, nhóm nghiên cứu chai ra 2 phương pháp điều khiển là điều khiển thủ công và điều khiển thông qua Kinect.

Phương pháp điều khiển này là sự kết hợp giữa tự động và thủ cơng, có nghĩa sẽ tạo ra 1 chương trình điều khiển có thể được lập trình sẵn hoặc có thể được can thiệp từ con người điều khiển tay bất cứ lúc nào. Để thực hiện được phương pháp này yêu cầu phải có được kịch bản cho tiết mục trình diễn để phân tích, lập trình kịch bản sẵn.Cịn với cách can thiệp cịn lại là điều khiển tay bằng các nút nhấn công tắc với nhiều chế độ, có thể điều chỉnh tốc độ động cơ của tay rối.

Với phương pháp này, nhóm nghiên cứu chọn driver điều khiển động cơ là L298N với các transisto và biến trở để điều khiển tốc độ và đóng mở mạch tự động với mạch điều khiển tay. Dưới đây là sơ đồ ngun lí của mạch điều khiển này:

Hình 6.2:Sơ đồ ngun lí của mạch điều khiển thủ cơng-tự động

Với mạch điện vào là 12V sẽ gặp khóa K1, khóa này có tác dụng phân chia 3 chế độ (chế độ thủ công-nghỉ-chế độ tự động). Nếu chọn chế độ tự động, dòng điện sẽ cấp sang cho mạch driver L298N, đồng thời khóa K4,K5 đồng thời mở về bên phải, lúc này mạch sẽ được thực hiện tự động theo bản đã lập trình sẵn.

Nếu chọn K1 là chế độ thủ cơng, dịng điện sẽ được dẫn qua bộ C1,C2 điều áp, giúp điều khiển tốc độ động cơ, sau đó điện sẽ dẫn đến các khóa K2,K3, hai khóa này được

mắc chéo để có thể đảo chiều động cơ theo ý mong muốn, đồng thời khóa K4,K5 phải được bật về bên trái để truyền tín hiệu điện đến động cơ.

Như vậy với 2 cách điều khiển có thể thấy vai trị của khóa K4,K5 là bảo vệ mạch driver khi đảo áp, điều này đã đáp ứng giúp cho mạch bền bỉ hơn khi hoạt động.

Hình 6.3: Lưu đồ giải thuật

6.2.2.Điều khiển bằng cảm biến Kinect

6.2.2.1.Nhận và xử lý tín hiệu từ Kinect

Sau khi thu nhận các dữ liệu về góc của thiết bị Kinect, ta sẽ tiến hành mở 1 cổng SerialPort từ Visual Studio về Arduino để tiến hành truyền dữ liệu cho vi điều khiển. Tiếp sau đó qua vi điều khiển sẽ xuất các xung điều khiển, qua các mạch lọc và mã hóa để truyền tín hiệu đi xa, phục vụ cho mục đích truyền thơng tín hiệu.

Hình 6.4:Sơ đồ nhận tín hiệu và mã hóa truyền đi xa

Tương tự ta cũng sẽ có sơ đồ nhận tín hiệu, giải mã hóa, giải điều chế và điều khiển động cơ như sau:

Hình 6.5:Sơ đồ nhận tín hiệu được gửi đến thơng qua sóng RF

Khi xung ban đầu được cấp ra từ vi điều khiển chưa thể truyền đi xa được do đó phải kết hợp với sóng mang là sóng sin thơng qua máy trộn sóng. Sau đó tín hiệu sẽ được mã hóa đề nhằm mục đích giảm nhiễu và tằng tính bảo mật cho tín hiệu, sau đó được khuếch đại và gửi đi. Tương tự ở nơi nhận, tín hiệu cũng sẽ đucợ khuếch đại lên trước khi đi vào giải mã hóa và điều chế để cho về hình dạng xung ban đầu, tín hiệu xung này sẽ thơng qua bộ điều khiển tốc độ PID để xử lý sai số tuyệt đối để điều khiển. Dưới đây là bảng nghiên cứu các lại điều chế và giải điều chế tín hiệu hiện nay:

Phân loại Hình dáng Đặc tính

Amplitude Shift Keying(ASK)

-Dùng chủ yếu trong điện tín vơ tuyến

-Nhạy với nhiễu( Xác suất sai số lớn )

-Tiết kiệm năng lượng truyền dữ liệu

-Hiệu suất bé hơn 1 Frequency Shift

Keying(FSK)

-Dùng chủ yếu trong modern truyền dữ liệu và truyền thông số -Xử lý được các hầu hết các dạng nhiễu biên độ của ASK -Đòi hỏi độ phức tạp trung bình

Phase Shift Keying (PSK) Binary Phase Shift Keying (BPSK-2. PSK) -Yêu cầu mạch phức tạp trung bình, dùng trong phát vơ tuyến số

-Loại bỏ được hoàn toàn các dạng nhiễu biên độ ASK

-Không bị ảnh hưởng bởi yếu tố băng thông như FSK -Hiệu suất bằng 1 Quadratur e Phase Shift Keying (QPSK-4. PSK) -Yêu cầu mạch có độ phức tạp cao, dùng trong phát vơ tuyến số

-Ít lỗi hơn FSK nhưng nhiều hơn 2.PSK

-Không bị ảnh hưởng nhiễu biên độ, tốc độ truyền dữ liệu lớn

-Hiệu suất bằng 2

QuadratureAmplitude Modulation (QAM)

-Đặc tính kết hợp giữa ASK và PSK

-Khắc phục được khả năng thay đổi góc nhỏ của PSK

-Dùng cho mạch có độ phức tạp cao, dung trong modem truyền dữ liệu và phát vô tuyến số

-Hiệu suất bằng 4

Bảng 6.1. Ma trận các phương pháp điều chế và mã hóa

Do yêu cầu truyền tín hiệu khá đơn giản chỉ bao gồm 4 chuỗi dữ liệu đơn nên không yêu cầu quá cao về mạch truyền tín hiệu, vậy nên nhóm nghiên cứu quyết định sử dụng mạch truyền RF 433MHZ thuộc dạng điều chế biên độ ASK trong đề tài này để thực hiện thao tác truyền nhận tín hiệu ở một khoảng cách nhất định nào đó.

Hình 6.6:Bộ thu phát tín hiệu RF 433MHz

Hình 6.7:Sơ đồ nguyên lý mạch phát RF

Phần phát bao gồm một bộ mã hóa (HT 12E) và một bộ phát ASK. Bộ mã hóa tạo địa chỉ 8 bit và dữ liệu 4 bit. Chúng ta có thể đặt địa chỉ bằng cách sử dụng cơng tắc DIP được kết nối trong bộ mã hóa A0 đến A7 (chân 1 đến 8). Nếu chúng ta thiết lập một địa chỉ trong mạch phát, địa chỉ này sẽ được yêu cầu trong phần thu. Vì vậy, máy thu và máy phát phải ln ln đặt cùng một địa chỉ. Vì vậy khi nhấn bất kỳ phím nào

trong điều khiển từ xa, bộ mã hóa sẽ tạo ra dữ liệu 4 bit tương ứng và gửi dữ liệu này với địa chỉ 8 bit bằng cách sử dụng bộ phát ASK. Tần số truyền là 433 MHz. Ngõ ra máy phát lên tới 8mW tại 433,92MHz với phạm vi khoảng 122m ngoài trời. Trong nhà, phạm vi khoảng 61m.

Hình 6.8:Sơ đồ nguyên lý mạch thu RF

Máy thu cũng hoạt động ở mức 433,92 MHz và có độ nhạy 3uV. Bộ thu ASK hoạt động từ 4,5 đến 5,5VDC và có cả ngõ ra tuyến tính và kỹ thuật số. Nó nhận được dữ liệu từ máy phát. Sau đó, bộ giải mã (HT 12D) sẽ giải mã dữ liệu và kích hoạt chân ngõ ra tương ứng (chân 10,11,12,13). Mỗi chân ngõ ra được kết nối với flip flop riêng biệt. Ngõ ra của bộ mã hóa sẽ thay đổi trạng thái của flip flop. Nói cách khác khi tác động nút nhấn, tín hiệu ngõ ra lên mức cao, nếu flip flop đang ở mức thấp thì nó sẽ lên mức cao. Ngược lại nếu flip flop đang ở mức cao thì nó sẽ lật trạng thái xuống mức thấp. Tín hiệu ngõ ra này khơng có khả năng điều khiển relay trực tiếp. Vì vậy, cần sử dụng transistor SL100 để điều khiển thiết bị. Thiết bị được kết nối với nguồn 230 VAC thông qua relay và thiết bị sẽ khởi động. Relay sẽ được cấp điện lại khi nhấn cùng một công tắc trong điều khiển từ xa. Điều này là do chúng ta đang nhấn cùng một

tín hiệu này sẽ lại thay đổi trạng thái của flip flop. Vì vậy, relay được cấp điện trở lại và thiết bị chuyển sang trạng thái TẮT

Thông số kỹ thuật chung mạch RF 433MHz

Các đặc tính Bộ phát Bộ thu

Điện áp hoạt động 3.5-12VDC 5VDC

Tần số 433MHz

Công suất truyền 10mW

Tốc độ truyền 4Kb/s

Khoảng cách truyền +Khơng có anten là 20-30cm

+Có anten là 50-100m

Kích thước 19*19*7mm 30*14*7mm

Bảng 6.2.Thơng số kỹ thuật mạch thu phát RF433MHz

6.2.2.2.Bộ điều khiển PID

Sau khi nhận được tín hiệu, giải mã hóa và điều chế, sau đó sẽ được đưa vào bộ điều khiển PID. Về mặt lý thuyết điều khiển PID là sự kết hợp của ba khâu: tỉ lệ(P); tích phân(I), vi phân (D). Phương trình vi phân của bộ điều khiển PID là:

) ( ) ( ) ( ) ( ) ( t d t de t e t e t uKpKi Kd

u(t) là tín hiệu điều khiển( ngõ ra của PID)

e(t) là sai số giữa tín hiệu tham chiếu và tín hiệu thực

Kplà hệ số khuếch đại tỉ lệ, Kdlà hệ số khuếch đại của khâu vi phân, Ki là hệ số khuếch đại của khâu tích phân nhằm triệt tiêu sai số ở chế độ xác lập

Hình 6.10:Đồ thị sai số với 3 giá trị Kd(KpKikhơng đổi)

Tín hiệu sau khi thơng qua bộ điều khiển PID sẽ được xử lý sai số khá nhiều, ba gồm các sai số ban đầu, xử lý sai số hiện tại và dự đoán sai số cho lần tiếp theo, với các tính năng xử lý sai số như vậy sẽ giúp cho hệ thống hoạt động nhịp nhàng, ít nhiễu hơn.

6.2.2.3.Mạch đọc encoder cho động cơ

Sau khi thơng qua bộ điều khiển PID, tín hiệu sẽ dược điều khiển thơng qua mạch đọc encoder. Vai trị của encoder rất quan trong, bởi vì nó giúp kiểm soát động cơ hoạt động, chia nhỏ thành các xung, đĩa xung càng lớn , độ chính xác của từng xung sẽ càng cao. Dưới đây là 2 ngõ ra A và B của module đọc encoder.

Với module đọc encoder, nhóm nghiên cứu chọn module đọc encoder v1 với 3 chân, khả năng đọc đạt độ chính xác cao và giá thành rẻ.

Hình 6.12:Module encoder v1

Với sơ đồ nguyên lý như sau:

Hình 6.13:Sơ đồ nguyên lý của module đọc encoder v1

Thông số kỹ thuật

Điện áp hoạt động 3.3V-5V

Dịng tải Dưới 15mA

Kích thước 23*20mm

Khe giữa diode có bề rồng 10mm

Khi bị che khuất ngõ ra ở mức cao, khi không bị cản trở ngõ ra ở mức thấp

Bảng 6.3:Thông số kỹ thuật module đọc Encoder v1

Với module đọc encoder này, nhóm nghiên cứu sẽ sử dụng để theo dõi xác định vị trí của động cơ, điều chỉnh xung để động cơ chạy đúng theo tín hiệu, qua đó dễ dạng thu nhận tín hiệu từ Kinect và chuyển đổi xung dễ dàng.

Hình 6.14:Lưu đồ giải thuật xử lý xung encoder

Với luu đồ giải thuật như trên đã cho thấy quy trình điều khiển của module encoder, với mạch thiết kế này sẽ giúp dễ dàng xác định được vị trí tức thời của tay địn và đồng thời xử lý tín hiệu từ thiết bị vi điều khiển để tiến hành quay đến vị trí mong muốn.

CHƯƠNG 7: THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 7.1. Giới thiệu

Sau khi thực hiện tổng thể đề tài, nhóm nghiên cứu đã tổng kết lại các yêu cầu chính của cơ hệ như sau:

- Thiết kế cơ khí của hệ thống phải đảm bảo chịu được các ngoại lực từ môi trường ngoài, động cơ hoạt động tốt.

- Hệ thống điều khiển bao gồm điều khiển tay và điều khiển bằng cảm biến Kinect đều hoạt động được, bền vững, xử lý nhiễu sai số và có thể truyền thơng từ xa trong một phạm vi nhất định.

- Giao diện dễ sử dụng, đầy đủ các chức năng để điều khiển.

7.2. Kết quả phần cứng của hệ thống 7.2.1.Hệ thống cơ khí

Dưới đây là một số hình ảnh về phần cứng sau khi hồn hành

Hình 7.2: Hình ảnh phần sau của hệ thống

Cùng với đó, nhóm nghiên cứu đã tổng kết được các thơng số của hệ thống khung dàn như sau:

Bảng 7.1. Bảng thông số hoạt động của hệ thống

STT ĐẶC TÍNH THƠNG SỐ

1 Khung đỡ 40kg

2 Chiều cao 1000mm

3 Cánh tay quay 2.1kg

4 Cánh tay tịnh tiến 1.3kg

5 Không gian hoạt động

tay quay

Bán kinh từ 0.2m-1.4m

6 Khơng gian hoạt động

tay tịnh tiến Bán kính từ 0.8m-1.2m 7 Trục quay lớn 15mm 8 Trục quay nhỏ 10mm 9 Con rối 2.6kg 7.2.2.Hệ thống điện-điều khiển

Hình 7.3:Hệ thống điện-điều khiển của hệ thống

Hình 7.4:Các chi tiết bên trong hệ thống điện

Những hình ảnh bên trên là hình ảnh của hệ thống điện- điều khiển, được nhóm nghiên cứu thiết kế trong một hộp vuông làm bằng mica dày 10mm, thuận lợi hơn khi làm việc gần mơi trường nước, bên cạnh đó hệ thống điện được trang bị thêm quạt tản

nhiệt để tản hơi nóng của các mạch điện giúp hệ thống hoạt động tốt hơn. Dưới đây là bảng thông kê về hệ thống điện như sau:

STT ĐẶC TÍNH SỐ LƯỢNG

1 Mạch Arduino Mega 2560 1 cái

2 Mạch driver L298N 5 cái

3 Mạch điều khiển từ xa RF433MHz 1 cái

4 Module đọc Encoder v1 6 cái

5 Mạch biến áp 4 cái

Bảng 7.2:Thống kê số lượng mạch trong hệ thống điện

7.3. Kết quả phần mềm của hệ thống

7.3.1. Kết quả của thu nhận dữ liệu từ Kinect

Với phiên bản Kinect v1.8 mà nhóm nghiên cứu đang sử dụng của hãng Microsolf, là một thiết bị đa năng, chuyên dùng cho việc nhận dạng mà trong đề tài này nhóm dùng đề nhận dạng khung xương có các thơng số sau đây:

Bảng 7.3. Thông số làm việc của Kinect

ĐẶC TÍNH THƠNG SỐ

Cảm biến màu 640*480 px at30FPS

Cảm biến độ sâu 320*240 px

Khoảng cách độ sâu 0.4m-4m

Khoảng nhìn ngang 57degree

Khoảng nhìn dọc 43degree

Số khớp có thể nhận dạng 20 khớp

Số người có thể nhận dạng 2 người

Với việc ứng dụng Kinect vào nhận dạng khung xương, nhóm nghiên cứu đã trích xuất được đầy đủ 20 tọa độ và tính các góc quay tay cần thiết trong cả 2 trạng thái đứng và ngồi. Dưới đây là hình minh họa việc trích xuất tọa độ của Kinect:

7.3.2. Kết quả giao diện làm việc

Giao diện nhóm thực hiện cho đề tài này khá đơn giản và dễ sử dụng, thuân tiện cho người dùng. Với giao diện được lập trình Winform của Visual Studio có dạng như hình dưới đây:

Hình 7.7:Giao diện làm việc chính của hệ thống

Với thao tác đầu tiên khi bắt đầu sử dụng là nhập cổng COM( SerialPort) của vi điều khiển, đề truyền dữ liệu từ Visual Studio đến Arduino thơng qua cổng này. Sau khi hồn tất thao tác, người dùng sẽ ấn nút Bật cổng Com, nếu có tồn tại cổng COM đó thì giao diện sẽ báo Connected.

Với 3 chế độ như đã thiết kế, bao gồm chế độ điều khiển bằng Kinect, chế độ điều khiển tự động, chế độ tay sẽ được tích hợp trong cùng một giao diện. Nếu chọn 1 trong 3 thì chế độ được chọn sẽ chuyển sang màu đỏ, cùng hiển thị trạng thái đang bât “ON”, đồng thời 2 chế độ còn lại sẽ khơng hoạt động. Sau khi kết thúc phần trình diễn, người dùng sẽ ấn lại nút Bật cổng COM đê thực hiện việc ngắt kết nối và kết thúc phiên làm

Một phần của tài liệu Nghiên cứu, thiết kế và điều khiển hệ thống rối nước tự động (Trang 71)

Tải bản đầy đủ (PDF)

(94 trang)