Điều khiển và giám sát động cơ servo trên LabVIEW sử dụng phần cứng arduino

Tóm tắt

Động cơ servo được ứng dụng nhiều trong rô bốt, công nghiệp, dân dụng, trên tàu thủy, Có

thể điều khiển động cơ servo trên các phần cứng khác nhau như PLC, vi điều khiển, phần

cứng của hãng National Instruments (NI). Hiện nay thiết kế hệ thống sử dụng phần mềm

LabVIEW đồng bộ với phần cứng NI đang trở nên phổ biến, tuy nhiên giá thành phần cứng

của LabVIEW rất đắt nên để lập trình ứng dụng với giá thành rẻ thì cần phải nghiên cứu để

tích hợp phần cứng, phần mềm của các hãng với nhau để tìm ra giải pháp tối ưu. Bài báo trình

bày cách thức để tích hợp phần mềm LabVIEW với phần cứng của hãng Arduino và thực hiện

mô hình ứng dụng trên cơ sở đã tích hợp thành công.

pdf 5 trang phuongnguyen 8100
Bạn đang xem tài liệu "Điều khiển và giám sát động cơ servo trên LabVIEW sử dụng phần cứng arduino", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Điều khiển và giám sát động cơ servo trên LabVIEW sử dụng phần cứng arduino

Điều khiển và giám sát động cơ servo trên LabVIEW sử dụng phần cứng arduino
CHÚC MỪNG NĂM MỚI 2019 
20 Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 
ĐIỀU KHIỂN VÀ GIÁM SÁT ĐỘNG CƠ SERVO TRÊN LABVIEW 
SỬ DỤNG PHẦN CỨNG ARDUINO 
USING ARDUINO HARDWARE TO CONTROL AND MONITOR SERVO MOTOR 
ON LABVIEW 
VƯƠNG ĐỨC PHÚC 
 Khoa Điện - Điện tử, Trường Đại học Hàng hải Việt Nam 
Email liên hệ: phucdtt@gmail.com 
Tóm tắt 
Động cơ servo được ứng dụng nhiều trong rô bốt, công nghiệp, dân dụng, trên tàu thủy, Có 
thể điều khiển động cơ servo trên các phần cứng khác nhau như PLC, vi điều khiển, phần 
cứng của hãng National Instruments (NI). Hiện nay thiết kế hệ thống sử dụng phần mềm 
LabVIEW đồng bộ với phần cứng NI đang trở nên phổ biến, tuy nhiên giá thành phần cứng 
của LabVIEW rất đắt nên để lập trình ứng dụng với giá thành rẻ thì cần phải nghiên cứu để 
tích hợp phần cứng, phần mềm của các hãng với nhau để tìm ra giải pháp tối ưu. Bài báo trình 
bày cách thức để tích hợp phần mềm LabVIEW với phần cứng của hãng Arduino và thực hiện 
mô hình ứng dụng trên cơ sở đã tích hợp thành công. 
Từ khóa: Động cơ servo, LabVIEW, giao diện người - máy, arduino R3. 
Abstract 
Servo motors are widely used in robots, industrial systems, ships, etc. It is possible to control 
servo motors on different hardware such as PLC, Microcontroller, NI’s hardware. Nowadays, 
system designing using LabVIEW software and NI’s hardware is becoming popular, but NI's 
hardware price is very expensive. Therefore, for programming applications at low cost, we 
need to study to integrate the hardware with LabVIEW software to find the optimal solution. 
This paper presents how to integrate LabVIEW software with Arduino hardware and to 
implement the application model on a successfully integrated basis. 
Keywords: Servo motor, LabVIEW, human machine interface, arduino R3. 
1. Đặt vấn đề 
Ngày càng có nhiều thiết kế hệ thống sử dụng phần mềm LabVIEW [1,2] kết hợp phần cứng 
NI trên thế giới bởi ngôn ngữ lập trình dễ hiểu, có nhiều công cụ lập trình, đồ họa cung cấp cho 
người sử dụng linh hoạt, dễ sử dụng và có sự giúp đỡ từ cộng đồng mạng. Phần mềm LabVIEW 
thường sử lập trình điều khiển và giám sát các hệ thống như trên máy bay, ô tô, máy chuyên dụng, 
Với việc nhiều hãng chế tạo phần cứng tích hợp được với phần mềm LabVIEW như Adruino, nhóm 
LabVIEW của Việt Nam hocdelam, các ứng dụng người dùng tự làm, giúp cho phần mềm này 
thực sự phổ biến và có nhiều ứng dụng 
trong mọi lĩnh vực cuộc sống [3]. 
Phần cứng Arduino đã và đang 
được ứng dụng rộng rãi trên thế giới. Nó 
có nhiều ưu điểm vượt trội: Giá thành 
thấp, phù hợp với mọi hệ điều hành hiện 
nay, có chương trình kết nối được chia sẻ 
và hướng dẫn rõ ràng. Với điểm mạnh của 
mỗi hãng khác nhau như vậy, việc tích 
hợp chúng mang ý nghĩa khoa học và thực 
tiễn. Chính vì thế tác giả đã lựa chọn phần 
cứng của Arduino với phần mềm 
LabVIEW để tích hợp với nhau và xây 
dựng ứng dụng từ kết quả đó. 
2. Các bước tích hợp 
2.1. Phần mềm cài đặt trên máy tính 
Để tích hợp LabVIEW với Arduino 
máy tính cần có VIs (Vitual Instruments) 
của LabVIEW. Phần mềm lập trình được 
ghi hay đọc dữ liệu từ phần cứng của Adruino thông qua bộ VIs. Trước khi tải các bộ Vis, các phần 
mềm sau cần phải cài đặt từ giao diện JKI VI Package: 
- VIPM Toolkit: là bộ quản lý các công cụ của LabVIEW. Sau khi cài đặt công cụ VIPM các 
bộ VIs sẽ được tìm và tải xuống máy và tích hợp; 
Hình 1. Hình ảnh của vỉ Arduino Uno 
CHÚC MỪNG NĂM MỚI 2019 
Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 21 
- MakerHub Linx: mở VIPM và Search với từ khóa Makerhub linx các Vis phù hợp với phần 
mềm được hiện ra và tải về theo ý người sử dụng; 
- Ni-Visa: công cụ giúp tích hợp với các thiết bị ngoại vi thông qua cổng USB với phần mềm 
LabVIEW; 
Các phần mềm trên khi cài đặt đầy đủ phần cứng của Arduino được giao tiếp thông qua 
LabVIEW. Từ đây, phần mềm LabVIEW có thể thu thập, xử lý và điều khiển thiết bị theo yêu cầu 
thực tế. 
Hình 2. Giao diện tìm kiếm các công cụ tích hợp cho LabVIEW 
2.2. Kết nối phần cứng Arduino với phần mềm LabVIEW 
Để tìm các công cụ hỗ trợ cho việc cài đặt thì phải cài phần mềm VIPM. Mở VIPM rồi lựa chọn 
phiên bản LabVIEW đã cài đặt trên máy tính. Sau khi đã thực hiện như trên ta gõ từ khóa LabVIEW 
interface for Arduino (Hình 3) để tìm được gói công cụ hỗ trợ. 
Khi đã tìm được công cụ này tiến hành cài đặt bằng cách kích đúp chuột trái lên LabVIEW 
interface for Arduino. 
Hình 3. Lựa chọn và cài đối tượng để tích hợp 
Sau khi lựa chọn bằng cách ấn vào Install giao diện Hình 4 sẽ hiện ra. Bước cuối cùng cần 
thực hiện là cài tiếp phần mềm Arduino IDE. Khi phần mềm đã cài đặt xong, chương trình giao tiếp 
giữa bo mạch Arduino và phần mềm LabVIEW được chứa trong thư mục cài đặt của LabVIEW với 
đường dẫn sau: C:\Program Files\National Instruments\LabVIEW 2015\vi.lib\LabVIEW Interface for 
Arduino\Firmware\LIFA_Base. Mở thư mục và tải nội dung vừa thực hiện lên phần cứng Arduino và 
cài đặt Arduino IDE. 
Hình 4. Cửa sổ cài đặt kết nối 
3. Xây dựng mô hình ứng dụng 
3.1. Giới thiệu mô hình 
Sau khi kết nối thành công tác giả xây dựng mô hình giám sát và điều khiển từ xa máy chính 
tàu thủy. Phần cứng xây dựng mô hình vật lý được thể hiện trên Hình 5 gồm có: Máy tính đã cài 
CHÚC MỪNG NĂM MỚI 2019 
22 Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 
phần mềm LabVIEW, Bo mạch Arduino, Cơ cấu thực hiện là động cơ servo một chiều, Vỉ khuếch 
đại công suất và Đối tượng điều khiển là động cơ một chiều đóng vai trò tạo ra tốc độ quay. 
Hình 5. Sơ đồ khối của mô hình 
 Hình 6. Động cơ Servo một chiều thực tế 
Động cơ servo một chiều loại Hitec HS-5485HB (thông số được mô tả chi tiết tại [4]) là cơ cấu 
thực hiện tác động vào hệ thống cung cấp nhiên liệu dựa trên yêu cầu người vận hành. Ghép nối 
tới động cơ có 3 dây trong đó GND và 5V là chân cấp nguồn 5 VDC và lúc nào cũng duy trì. Chân 
PWM là chân điều khiển được cấp tín hiệu xung. Với góc quay từ 0 đến 1800 tương ứng với độ rộng 
xung 900-2100 µs (lớn nhất 750-2250 μsec tương ứng với góc quay 199,5°) và có phản hồi thông 
qua chiết áp 5KΩ có thể đáp ứng tốt yêu cầu đặt ra trong hệ thống này. Ngoài ra động cơ servo một 
chiều (Hình 6) được ứng dụng phổ biến trong điều khiển như robot, các hệ thống tự động hóa, điều 
khiển vị trí, 
3.2. Lập trình trên LabVIEW 
a. Lập trình giao diện điều khiển người máy 
Để tạo được giao diện đẹp, dễ sử dụng đòi hỏi người xây dựng có kinh nghiệm và đầu tư thời 
gian. Có thể tải các công cụ có sẵn trên internet, tạo công cụ, lồng hình ảnh thực trên phần mềm để 
có giao diện phù hợp. Giao diện (Hình 7) được tạo trên Front Panel của phần mềm LabVIEW gồm: 
- Phần điều khiển: tay điều khiển dùng để đặt tốc độ máy chính, nút ấn điều khiển dừng sự 
cố, điều khiển via máy và cửa số đặt tham số cho bộ điều khiển PID [5]. 
- Phần giám sát: có nhiều thông số cần giám sát tuy nhiên trên giao diện này tác giả xây dựng 
một số thông số chính như: áp lực dầu bôi trơn, tốc độ thực của máy, nhiệt độ nước làm mát, qua 
tốc, đồng thời có đồ thị theo dõi tốc độ theo thời gian thực (graph). 
Hình 7. Giao diện điều khiển 
CHÚC MỪNG NĂM MỚI 2019 
Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 23 
b. Lập trình chức năng 
Phần lập trình chức năng được tạo trên block Panel của phần mềm LabVIEW như Hình 9. Mô 
hình ứng dụng được lập trình đủ các chức năng cơ bản của hệ thống giám sát và điều khiển từ xa 
máy chính theo các thuật toán tại [6, 7]. Muốn điều khiển tốc độ từ xa cần dịch chuyển tay điều khiển 
C.TRL HANDLE (Hình 7) tới vị trí mong muốn khi đó tín hiệu đưa ra điều khiển vị trí của động cơ 
servo. Hình 8 thể hiện thuật toán lặp [7] được sử dụng khi lập trình. Tín hiệu sai lệch giữa tay điều 
khiển và vị trí thực của thanh răng nhiên liệu sẽ được tính toán (bản chất là bộ điều khiển PI [8] và 
bộ khuếch đại tín hiệu) để đưa ra tín hiệu điều khiển động cơ servo. Động cơ servo sẽ quay để dịch 
chuyển thanh răng nhiên liệu theo đúng vị trí để đạt được tốc độ mong muốn. 
Hình 8. Thuật toán lặp điều khiển vị trí thanh răng nhiên liệu 
Hình 9. Lập trình trên Block panel cho hệ thống 
CHÚC MỪNG NĂM MỚI 2019 
24 Tạp chí khoa học Công nghệ Hàng hải Số 57 - 01/2019 
Hình 10. Hình ảnh mô hình hoàn thiện 
Các tín hiệu giám sát thông số của máy cũng được lập trình theo yêu cầu hệ thống giám sát 
[7]. Khi đã lập trình xong, tiến hành kết nối thành mô hình hoàn thiện như Hình 10. Mô hình bao gồm 
động cơ một chiều đóng vai trò là máy chính có gắn cảm biến tốc độ để đo tốc độ thực của máy. Vỉ 
cấp điện áp điều khiển cho động cơ được lấy thông qua bộ băm xung điện áp và điện áp ra phụ 
thuộc vào vị trí của biến trở do động cơ servo quay. Tín hiệu điều khiển servo được lấy từ vỉ điều 
khiển Arduino Uno R3. Mô hình này ứng dụng từ phần cứng của bo mạch Arduino Uno R3 với phần 
mềm LabVIEW thông qua kết nối được thực hiện từ Mục 2. Hệ thống cho phép điều khiển từ xa tốc 
độ máy chính theo các vị trí và chế độ. Trong chế độ tự động điều khiển từ xa tốc độ máy chính 
được điều khiển theo thuật toán PID [8, 9]. 
4. Kết luận 
Bài báo đã giới thiệu về tích hợp phần mềm LabVIEW với phần cứng Arduino nhằm tận dụng 
ưu điểm về phần lập trình của phần mềm LabVIEW và giá thành của phần cứng Arduino. Từ việc 
kết nối thành công, mô hình điều khiển và giám sát máy chính tàu thủy được xây dựng. Mô hình có 
giao diện người dùng thân thiện và thể hiện đủ các thông tin cần thiết trong vận hành và sử dụng. 
Mô hình tập trung vào điều khiển động cơ servo một chiều. Nghiên cứu mang tính chất ứng dụng 
cao, mang lại hiệu quả kinh tế nhằm nâng cao khả năng nghiên cứu trong giảng viên và sinh viên, 
nâng cao chất lượng giảng dạy. Với nghiên cứu này cho phép tiếp cận phần mềm LabVIEW trong 
mọi lĩnh vực với chi phí thấp, xa hơn nữa có thể xây dựng các mô hình điều khiển khi ứng dụng xử 
lý âm thanh và hình ảnh. 
TÀI LIỆU THAM KHẢO 
[1] Vương Đức Phúc, Ứng dụng LabVIEW trong hệ thống tự động giám sát nồng độ khí, Tạp chí 
KHCNHH, số 51, 8/2017. 
[2] Vương Đức Phúc, Ứng dụng LabVIEW trong điều khiển nồng độ khí, Hội nghị Khoa nọc Công 
nghệ GTVT lần IV, Trường Đại học GTVT TP Hồ Chí Minh, tr. 278-283, tháng 5/2018. 
[3] Nguyễn Bá Hải, Lập trình LabVIEW, Trường Đại học Sư phạm Kỹ thuật TPHCM, 2013. 
[4] Nguyễn Doãn Phước, Lý thuyết điều khiển nâng cao, NXB Khoa học và Kỹ thuật, 2005. 
[5] https://www.servocity.com/hs-5485hb-servo. 
[6] Hoàng Đức Tuấn, Đinh Anh Tuấn, Nguyễn Tất Dũng, Hệ thống tự động tàu thủy 1, NXB Hàng 
hải, 2015. 
[7] Tài liệu học tập môn Điện tàu thủy 2, Lưu hành nội bộ Trường Đại học Hàng hải Việt Nam. 
[8] National instruments, PID Control, NI-tutorial, Oct 2012. 
[9] Kiam Heong Ang, Gregory Chong, Yun Li, PID Control System Analysis, Design, and 
Technology, pp 559-576, Vol 13, 2005. 
Ngày nhận bài: 02/7/2018 
Ngày nhận bản sửa: 08/8/2018 
Ngày nhận bản sửa lần 2: 11/10/2018 
Ngày duyệt đăng: 01/11/2018 

File đính kèm:

  • pdfdieu_khien_va_giam_sat_dong_co_servo_tren_labview_su_dung_ph.pdf