LabVIEW控制Arduino实现舵机联控(基础篇—9)
本篇博文将通过LabVIEW和Arduino Uno控制板实现对单个和多个舵机转动角度的控制。
1
控制单个舵机
1.1、实验目的
利用LIAT函数库通过LabVIEW和Arduino Uno控制板实现对单个舵机转动角度的控制。
1.2、实验环境
将9g舵机的电源线分别接至Arduino Uno控制板上的5V和GND引脚上,信号线接至数字引脚D2上,如下图所示:
1.3、程序设计
本例修改自LabVIEW lnterface for Arduino函数库中的示例,位于函数选板“函数”→"Arduino"→"Example" "Servo Example",修改后的LabVIEW前面板如下图所示:
![图片](http://editerupload.eepw.com.cn/fetch/202206/ce4bb1bc7e0d39a36e8dea70c40165b6.png)
程序框图如下图所示:
![图片](http://editerupload.eepw.com.cn/fetch/202206/b7a6b2dfe63ffa19cd48568b5f1b22ad.png)
LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用Servo函数库中的Set Number of Servo和Configure Servo函数节点以设置舵机的数目为1和舵机的连接引脚,接着进入While循环并不断调用Servo Write Angle和Servo Read Angle函数节点先向舵机写入转动的角度值,并读取舵机当前的角度值。最后,断开与Arduino Uno控制板的连接。
1.4、实验演示
点击运行按钮,LabVIEW程序开始执行,通过调节设置角度的旋钮,可以看到舵机随着角度的改变而转动,同时,当前角度值也随着舵机的转动而实时改变。
2
控制多个舵机
2.1、实验目的
利用LIAT函数库通过LabVIEW和Arduino Uno控制板实现对多个舵机转动角度的控制。
2.2、实验环境
实验环境和控制单个舵机方法类似,将两个9g舵机的电源线分别接至Arduino Uno控制板上的5V和GND引脚上,信号线分别接至数字引脚D2和D3上。
2.3、程序设计
本例修改自LabVIEW Ilnterface for Arduino函数库中的示例,位于函数选板“函数”→"Arduino"→"Example"→"Servo Example",修改后的LabVIEW前面板如下图所示:
![图片](http://editerupload.eepw.com.cn/fetch/202206/5514c58e9e3c0c2d71a063b6a14d2ab9.png)
程序框图如下图所示:
![图片](http://editerupload.eepw.com.cn/fetch/202206/c20e180e8c6a5b4b1ccc05f21dc4b707.png)
LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用Servo函数库中的Set Number of Servo和Configure Servo函数节点以设置舵机的数目为2和每个舵机所连接的引脚,接着进入While循环并不断调用Servo Write Angle和Servo Read Angle函数节点向指定舵机写入转动的角度值,并读取出指定舵机当前的角度值。最后,断开与Arduino Uno控制板的连接。
2.4、实验演示
点击运行按钮,LabVIEW程序开始执行,通过舵机1和舵机2的调节设置角度旋钮,可以看到舵机1和舵机2随着角度的改变而转动,同时,舵机1和舵机2的当前角度值也随着舵机1和舵机2的转动而实时改变。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。