ESP8266 12F 点灯科技APP 控制两个舵机
第一次写博客,有什么不足,希望大家指正。
文章目录
- 1.基本功能描述
- 2.程序
- 3.接线图
- 4.配置方法
- 5.注意事项
custom wifimanager 这个库在云盘在中呢
链接:https://pan.baidu.com/s/1RjYO0IF1sZDa0K9GJhi0xw
提取码:kx3l
缺少什么库 就在库管理中,搜索相应的下载就行了
1.基本功能描述
我是使用了ESP8266 12f 控制两个舵机 如图:
舵机1开 /关 ,分别控制舵机1的开关和闭合
舵机2同舵机1相同
2.程序
#include <Servo.h>
#define BLINKER_WIFI
#include <Blinker.h>
#include <ESP8266WiFi.h>//needed for library
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <CustomWiFiManager.h> char auth[] = " "; // 这个一定要写自己blinker app 中那个密匙
char ssid[] = ""; //wifi 和密码可以不用写 待会会有手机配网
char pswd[] = ""; // //
BlinkerButton Button1("btn1_k"); //舵机1的开
BlinkerButton Button2("btn1_g"); //舵机1的关BlinkerButton Button3("btn2_k"); //舵机2的开
BlinkerButton Button4("btn2_g"); //舵机2的关//分别创建我们要控制的舵机1和2
Servo myservo1;//定义(创建)一个舵机名称为myservo1
Servo myservo2;//定义(创建)一个舵机名称为myservo2//创建6个滑块
BlinkerSlider Slider1("ser_max1"); //滑块1 控制第一个舵机最大角度
BlinkerSlider Slider2("ser_min1"); //滑块2 控制第一个舵机最小角度
BlinkerSlider Slider3("ser_mid1"); //滑块3 控制第一个舵机中间角度BlinkerSlider Slider4("ser_max2"); // 滑块4 控制第二个舵机最大角度
BlinkerSlider Slider5("ser_min2"); //滑块5 控制第二个舵机最小角度
BlinkerSlider Slider6("ser_mid2"); //滑块6 控制第二个舵机中间角度//定义6个变量
int ser_max1, ser_min1, ser_mid1;
int ser_max2, ser_min2, ser_mid2;
bool on_or_off = false; //这个可有可无吧 意思是创建一个Bool类型的变量// app 端按下按键即会执行该函数 回调函数--------------------------------------------------------------------------------------------------------
void button1_callback(const String & state) {
BLINKER_LOG("get button state: ", state);//读取按键状态myservo1.write(ser_max1); //写入滑块1 的角度 这个角度大小可以通过滑块1 来设置Blinker.vibrate(); //使手机震动Blinker.delay(1000);//这个delay 一定要有 不然舵机转不过来 myservo1.write(ser_mid1); //15s后恢复到滑块3设置的角度 ,因为既然控制开关了 就必须考虑到我们用手按的时候 舵机不能挨着开关呀Blinker.vibrate(); //使手机震动}void button2_callback(const String & state) {BLINKER_LOG("get button state: ", state);//这个和上面的一样myservo1.write(ser_min1); Blinker.vibrate(); Blinker.delay(1000);myservo1.write(ser_mid1); //写入设置好的角度90Blinker.vibrate(); //使手机震动
}void button3_callback(const String & state) {BLINKER_LOG("get button state: ", state);myservo2.write(ser_max2); //写入设置好的角度90Blinker.vibrate(); //使手机震动Blinker.delay(1000);//这个delay 一定要有 不然舵机转不过来 myservo2.write(ser_mid2); //写入设置好的角度90Blinker.vibrate(); //使手机震动
}void button4_callback(const String & state) {BLINKER_LOG("get button state: ", state);myservo2.write(ser_min2); //写入设置好的角度90Blinker.vibrate(); //使手机震动Blinker.delay(1000);//这个delay 一定要有 不然舵机转不过来 myservo2.write(ser_mid2); //写入设置好的角度90Blinker.vibrate(); //使手机震动
}//------------------------------------------------------------------------------------------------------------------------------------void slider1_callback(int32_t value)//这个是滑块程序
{ser_max1 = value;myservo1.write(ser_max1);Blinker.vibrate(); //使手机震动Blinker.delay(1000);BLINKER_LOG("get slider value: ", value);
}void slider2_callback(int32_t value)
{ser_min1 = value;myservo1.write(ser_min1);Blinker.vibrate(); //使手机震动Blinker.delay(1000);BLINKER_LOG("get slider value: ", value);
}void slider3_callback(int32_t value)
{ser_mid1 = value;myservo1.write(ser_mid1);Blinker.vibrate(); //使手机震动Blinker.delay(1000);BLINKER_LOG("get slider value: ", value);
}void slider4_callback(int32_t value)
{ser_max2 = value;myservo2.write(ser_max2);Blinker.vibrate(); //使手机震动Blinker.delay(1000);BLINKER_LOG("get slider value: ", value);
}void slider5_callback(int32_t value)
{ser_min2 = value;myservo2.write(ser_min2);Blinker.vibrate(); //使手机震动Blinker.delay(1000);BLINKER_LOG("get slider value: ", value);
}void slider6_callback(int32_t value)
{ser_mid2 = value;myservo2.write(ser_mid2);Blinker.vibrate(); //使手机震动Blinker.delay(1000);BLINKER_LOG("get slider value: ", value);
}//-------------------------------------------------------------------------------------------------------------------------
void setup() {// 初始化串口,并开启调试信息Serial.begin(115200);WiFiManager wifiManager;//自动配网wifiManager.autoConnect("AutoConnectAP");Serial.println("connected...yeey :)");// 初始化有LED的IOpinMode(LED_BUILTIN, OUTPUT); //LED_BUILTIN 宏就是开发板指示灯的io口digitalWrite(LED_BUILTIN, HIGH);// 初始化blinkerBlinker.begin(auth, ssid, pswd);Button1.attach(button1_callback); //绑定按键执行回调函数Button2.attach(button2_callback); //绑定按键执行回调函数Button3.attach(button3_callback); //绑定按键执行回调函数Button4.attach(button4_callback); //绑定按键执行回调函数Slider1.attach(slider1_callback);Slider2.attach(slider2_callback);Slider3.attach(slider3_callback);Slider4.attach(slider4_callback);Slider5.attach(slider5_callback);Slider6.attach(slider6_callback);
myservo1.attach(16); //esp8266的GIPIO16 对应NODEmcu 的D0
myservo2.attach(5); //同上 对应modeMCU 的,.....}//-----------------------------------------------------------------------------------------------------------
void loop() {digitalWrite(LED_BUILTIN, HIGH);Blinker.run(); //*每次运行都会将设备收到的数据进行一次解析。digitalWrite(LED_BUILTIN, LOW);// 在使用WiFi接入时,该语句也负责保持网络连接*/delay(200);
}
3.接线图
其中 attach(16) 就是舵机接在 esp8266的gpio 16上 就是nodeMCU 的D0上
用node MCU也可以 只不过接线的时候注意引脚
烧录程序 接线如图
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210508211327886.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81MTM5NzIxNQ==,size_16,color_FFFFFF,t_70
烧录后 把IO 0断开 就可以进行配置网络了
4.配置方法
打开无线网 然后连接名字为AutoConnectAP的WIFI热点
会自动登录配网页面
如果不自动登录 可以点开网络旁边的感叹号
有网络的IP地址 直接在浏览器中输入也可以登录
然后在点灯科技配置自己的按键和滑块
注意点:
数据键名 要正确 是在代码中
滑块的也是 数据键名 和 最大值等都要对
5.注意事项
注意 按键和滑块的键名和按键类型不要配置错了
ESP8266 12F 点灯科技APP 控制两个舵机相关推荐
- 不受局域网限制的遥控小车(esp8266+l298n+点灯科技平台)
好久没写文章了,忙一些事去啦,最近做了一个小车觉得还挺有意思的,做成教程分享给大家(闲鱼奸商源码卖88真是不要脸) 博主给自己的小车供网,让远在百公里外的兄弟控制了小车,确实是个非常有意思的小项目 首 ...
- 利用Nodemcu+Arduino nano+TB6612+点灯科技APP制作简易麦克纳姆轮Wi-Fi遥控小车
摘要 麦克纳姆轮小车由于车轮本身的特殊结构,可以实现全向行驶,可玩性非常强.麦克纳姆轮原理在这里不做展开,麦克纳姆小车主要是通过控制四个轮胎的转与不转以及转动的方向来实现多方向的运动,其中一种X型车轮 ...
- 物联网系列⑤——基于ESP8266与点灯科技平台的氛围灯设计(接入小爱同学)
物联网系列⑤--基于ESP8266与点灯科技平台的氛围灯设计(接入小爱同学) 一.设计目标 二.电路设计 三.思路介绍 四.ESP8266代码 一.设计目标 使用点灯科技平台接入物联网,可通过手机点灯 ...
- ESP8266+blinker(点灯科技)
目录 前言 一.准备材料 二.项目部署 三.代码调试 总结: 前言 blinker点灯科技真的是一款非常好用的物联网控制APP,它节省了你连接云端的程序,直接实现APP控制系统.接下来让我们看看怎么通 ...
- 树莓派python控制两个舵机_利用树莓派,光敏电阻和小型舵机实现自动获取 《最终幻想 X HD重制版》 连续避雷200次奖杯...
我相信大家只要是玩过最终幻想 X的同学肯定头疼于跑鸟和连续避雷200次,为此可以说不眠不休,甚至连砸机器的心都有,这两个小游戏可谓极度变态.对于连续避雷200次这个小游戏,不仅要求玩家在屏幕出现闪电后 ...
- 【arudino】RosBot 开发日记------控制两个舵机
收到之前比赛兑换的RosBot 基础板,顺便做一个学习笔记吧 一. 板子做工和用料 板子元件规整,双面板设计,布局紧凑,附带树莓派的IO扩展,不足之处板子边缘没处理好有毛刺.1 ...
- 自制小爱音箱控制氛围灯(小爱音箱+Arduino+RGB灯条+点灯科技)
硬件准备 1 .wemos d1 mini (ESP8266) 2.灯条应该是ws2813吧 3.小爱音箱 查看资料 点灯科技接入小爱流程 https://diandeng.tech/doc/xiao ...
- ESP8266从点灯到遥控小车(三)——组装小车,0代码开发APP控制小车
ESP8266从点灯到APP遥控小车(三)--组装小车,0代码开发APP控制小车 文章目录 ESP8266从点灯到APP遥控小车(三)--组装小车,0代码开发APP控制小车 所需组件 一.小车所需组件 ...
- 基于ESP8266+点灯科技+小爱同学控制开门解决方案!
前言 每次下班回到家就已经很累了,到门口还要到处翻找钥匙,然后开门,是不是觉得很烦,那我们有没有不用通过钥匙开门且成本低的方案了?下面我会教大家基于ESP8266+点灯科技+小爱同学来控制开门的方法 ...
最新文章
- JavaWeb基础—JSP
- mysql一次读取500条数据_mysql批量插入500条数据
- 洛谷 - P3391 【模板】文艺平衡树(Splay-区间反转)
- DotNetAnywhere:可供选择的 .NET 运行时
- 活动选择(信息学奥赛一本通-T1323)
- windows安装python2.7_Windows下安装python2.7及科学计算套装
- 软件测试工程师门槛:新人如何做好功能测试?
- 电子科大+矩阵理论+真题总结
- 【读书笔记】2018《后谷歌时代:大数据的衰落及区块链经济的崛起》
- Jenkins构建ant项目
- PPT柱形统计图制作详情——小白秒变大神
- 【C语言入门】数字中英翻译
- 视频配音文字转语音怎么弄?介绍几种好用的方法给你
- 阿里云小福利!水杯免费送
- konga 连接postgresql 12+启动异常:error: column r.consrc does not exist
- 苹果x跟xr哪个好_苹果XR和苹果X哪个性价比高
- 阿里P7级别架构师教你HashMap的工作原理
- Wordpress文章内容的各种调用
- [高通SDM450][Android9.0]屏幕显示DPI可动态配置
- 强化学习(二):Policy Gradient理解