第四十课--Microduino 直流电机驱动(电位器PWM调速)/zh

来自Microduino Wikipedia
Pkj讨论 | 贡献2014年3月11日 (二) 06:27的版本 (Created page with "{{Language|Lesson_40--Microduino_DC_Motor_Drive_(Potentiometer_PWM_control_speed)}} {| style="width: 800px;" |- | ==目的== 本教程将教大家如何用一个电位器来...")
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索
Language English

目的

本教程将教大家如何用一个电位器来控制DC电机的转速。

设备

  • Microduino-Core
  • Microduino-FT232R
  • 其他硬件设备
    • 面包板跳线 一盒
    • 面包板 一块
    • DC电机 一个
    • 电位器 一个
    • 2.2K欧姆电阻 一个
    • 二极管 一个
    • NPN晶体管 一个
    • USB数据连接线 一根


原理图

第四十课-Microduino电位器PWM调速直流电机.jpg

说明:

在连接NPN晶体管的时候,基极B连接2.2K的电阻,发射极E连接地线,集电极C连接电机,如下图:

第四十课-Microduino电位器PWM调速直流电机NPN三极管连接.jpg

程序

int potPin = A0; //电位器输入引脚
int motorPin = 9;//电机引脚
int potValue = 0;//定义电位器的值
int motorValue = 0;//记录电机的值
void setup() {
 Serial.begin(9600);
}
void loop() {
 potValue = analogRead(potPin);  //读取电位器的值
 motorValue = map(potValue, 0, 1023, 0, 255);//映射为0~255之间的数值
 analogWrite(motorPin, motorValue);//PWM传给电机
 //显示
 Serial.print("potentiometer = " );     
 Serial.print(potValue);
 Serial.print("\t motor = ");
 Serial.println(motorValue);
 delay(2);    
}

调试

步骤一:把代码复制到IDE中,编译

步骤二:电路连接如下图:

第四十课-Microduino电位器PWM调速直流电机连接图.jpg

步骤三:运行代码

步骤四:调整电位器,查看电机转速

结果

扭动电位器,可以调整电机转速

视频

http://v.youku.com/v_show/id_XNjgyMzYwMTQw.html