完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在尝试使用 WeMOS D1 ESP8266 控制无刷电机
电机控制器和电机规格如下: 11.1v LiPo 电池为控制器和 ESP8266(VIN、GND、 D9) 电机控制器用户手册在这里: 20210522_193447.jpg 接线照片在这里 20210522_193646.jpg 打开控制器会旋转其风扇。但电机不旋转。 发出哔哔声以启动电机的准备程序是什么? 这是一些代码: 代码:全选#include Servo ESC1; int pos = 0; //Sets position variable void arm(){ setSpeed(0); //Sets speed variable delay(1000); setSpeed(90); //Sets speed variable delay(1000); setSpeed(135); //Sets speed variable delay(1000); setSpeed(0); //Sets speed variable delay(1000); } void setSpeed(int speed){ int angle = map(speed, 0, 100, 0, 180); //Sets servo positions to different speeds ESC1.write(speed); //angle } void setup() { ESC1.attach(2); //Adds ESC to certain pin. GPIO2 is pin 9 arm(); } void loop() { int speed; //Implements speed variable for(speed = 0; speed <= 70; speed += 5) { //Cycles speed up to 70% power for 1 second setSpeed(speed); //Creates variable for speed to be used in in for loop delay(1000); } delay(4000); //Stays on for 4 seconds for(speed = 70; speed > 0; speed -= 5) { // Cycles speed down to 0% power for 1 second setSpeed(speed); delay(1000); } setSpeed(0); //Sets speed variable to zero no matter what delay(1000); //Turns off for 1 second } |
|
相关推荐
1个回答
|
|
首先,需要了解无刷电机的运作原理和控制方法。无刷电机是基于PWM进行控制的,因此需要使用PWM输出来控制电机速度。
以下是基本的步骤: 1. 将无刷电机与电机控制器连接好,并将电机控制器连接到WeMOS D1 ESP8266的D9引脚(这是一个支持PWM输出的引脚)。 2. 在Arduino IDE中,使用Servo库来控制PWM输出。将ESC1变量设置为Servo类的对象,并使用attach()函数将其连接到D9引脚。 3. 通过ESC1.writeMicroseconds()函数发送PWM信号来控制电机的速度和方向。在大多数情况下,对无刷电机进行加速需要将电机先解锁,然后将电机转速逐渐增加到所需速度。这可以通过将电机速度在代码中逐渐增加来实现。 4. 在开始之前,确保电机控制器与WeMOS D1 ESP8266的地线相连,并且使用与电池相同的电源来给控制器和WeMOS D1 ESP8266供电。 下面是一个简单的示例代码,可以用作起点: 代码:全选#include Servo ESC1; // 让我们利用 PWM 输出控制舵机 void setup() { ESC1.attach(D9); // 将 ESC1 附着到 D9 引脚 } void loop() { for (int i = 1000; i <= 2000; i+=10) { // 加速到最大速度 ESC1.writeMicroseconds(i); // 发送 PWM 信号控制电机速度 delay(250); // 延迟以等待电机加速 } ESC1.writeMicroseconds(1000); // 停止电机 delay(2000); // 停止 2 秒,然后再重复加速 } 请注意,该代码仅仅是一个起点,并不考虑电调器的解锁流程等内容。您需要在代码中进行更多的控制,以便根据您的具体需求控制电机的速度和方向。 |
|
|
|
只有小组成员才能发言,加入小组>>
527浏览 6评论
438浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
425浏览 5评论
421浏览 4评论
396浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-5 08:25 , Processed in 0.798617 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号