舵机控制

来自Microduino Wikipedia
Pkj讨论 | 贡献2014年6月9日 (一) 05:51的版本 程序
跳转至: 导航搜索

目的

本教程将教大家如何用processing控制舵机旋转。

设备

  • 其他硬件设备
    • USB数据连接线 一根
    • 舵机 一个

原理图

ProcessingServoControlSchematics.jpg

程序

https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/processingServoControl

调试

步骤一:按着原理图搭建硬件环境,像这样:

ProcessingServoControlConnectionDiagram.jpg


步骤二:解释一下代码:

本例需要两端的代码,Processing端和Microduino端

Microduino:

使用firmata的StandardFirmata程序,因为其实现了舵机控制方法

Processing:

//在setup中定义串口通讯和设置pinMode

 arduino = new Arduino(this, Arduino.list()[0], 57600); //your offset may vary
 arduino.pinMode(9, 5);

//读取鼠标x轴的位置,来设置舵机的角度

 void draw()
 {
   // read mouseX coordinate
   int newPos = constrain(mouseX/2, 0, 180); // update bg & servo position if mouseX changed
   if (newPos != pos)
   {
     background(0);
     stroke(255);  
     line(mouseX, 0, mouseX, 160);   
     text (newPos, mouseX, 180); 
     arduino.analogWrite(9, newPos);
     println (" newPos = " + newPos );
     pos=newPos; //update servo position storage variable
   }
 } 


步骤三:下载代码并编译通过。

步骤四:运行后,左右移动鼠标,查看舵机有什么变化。

结果

在processing中会显示一个指示剂,随着鼠标的x轴移动,舵机也相应的转动:


视频