APP下载

童车变身网红买菜车(三)

2023-02-21史泽辉

电脑报 2023年6期
关键词:管脚按键滑动

史泽辉

我們已经使用树莓派和掌控板实现了两种方案,但造价略偏高、技术也比较简单。本期使用ESP8266WiFi模块的Blinker方案来打造低成本高性能网络控制小车。

一、Blinker物联网

通常物联网项目开发,需要进行设备端、客户端、服务器端开发,个人开发者不可能负担这三部分的开发。点灯科技Blinker提供了手机APP到设备端的控制方案,有多种设备端SDK支持,让开发者更好地聚焦于设备端。配合由Blinker团队运维的客户端(BlinkerAPP)、服务器端,可以快速打造出自己的物联网设备。

Blinker支持蓝牙、WiFi等多种主流通信方式,理论上只要支持蓝牙或WiFi的设备,都可以使用Blinker连接。使用WiFi接入时,当设备和手机在同一个局域网中用局域网通信,其余情况使用MQTT远程通信。

二、ESP8266模块

ESP8266是一个完整且自成体系的WiFi网络解决方案,能够独立运行,也可以将其添加到任何基于微控制器的设计中,只需通过SPI/SDIO接口或中央处理器AHB桥接口即可承担WiFi适配器的任务。

ESP8266强大的片上处理和存储能力,使其可通过GPIO口集成传感器及其他应用的特定设备,实现了最低前期的开发和运行中最少地占用系统资源。

三、实现原理

如图1所示,客户端手机APP通过物联网平台发送消息,服务器再通过网络把信号传输给设备端ESP8266,继而控制小车运行(图1)。

四、硬件准备

五、实现过程

1.手机APP制作

1.1下载并安装BlinkerAPP

安卓/苹果均在应用商店中搜索“Blinker”下载安装。

1.2获取SecretKey

点击“+添加设备”,选择“独立设备”,“网络接入”方式,复制key备用。

1.3自定界面功能

在APP中插入两个滑动条、四个按键和一个开关组件,自行布局并美化样式。

拖动滑动条,手机将向设备发送相应的数值,用以控制速度和时间。按键分为三种状态,分别是轻触按键(tap)、按下未放开(press)、释放按键(pressup)。

大部分组件都有一个键值(key)即“组件键名”,设备端开发时,对应程序中需要设定组件的键值。如前进按键的键名为“b1”,记住它,后边设备端编程的时候要用到(图2)。

2.设备端开发

接下来我们使用Mixly对设备端进行编程。

2.1选择开发板

在Mixly开始界面中选择第二屏中的ArduinoESP8266模块。

2.2安装相关库

在右上角“设置”里,点击“管理库”,选择Blinker和ESP8266库并云端导入安装,也可以全部安装,方便以后使用(图3)。

2.3程序编写

2.3.1设备联网

初始化设置联网为WiFi模式,填入无线网络名称(ssid)和密码(pswd),即我们准备的随车手机的热点名称和密码,设备密钥(auth)填写我们在手机APP中复制的SecretKey,这是设备和APP之间联网通信的通行证(图4)。

2.3.2声明变量

接下来,我们设置几个变量,方便调用。分别是速度滑动条(sudu)、延时滑动条(yanshi)和点灯按键次数(cishu)(图5)。

2.3.3滑动条数值调用

通过两个变量调用滑动条的数值,用于控制小车的驱动和转向速度以及点动延时(图6)。

2.3.4创建四个方向控制

电机驱动板的IN1、IN2、IN3、IN4分别接ESP8266模块的d6、d2、d7、d5管脚。其中d6、d2管脚控制马达1负责转向,d7、d5管脚控制马达2负责驱动小车前进和后退(图7)。

需要注意的,ESP8266模块的管脚定义和Mixly编程中的管脚定义是不同的。它们的对应关系如图8:

ESP8266模块的d6、d2、d7、d5管脚在Mixly编程中分别对应管脚14、13、4、12。

我们以前进键为例。它的键名为“b1”与手机APP里的前进按键相同。把tap设为点动模式,点一下设备会以一定的速度(sudu)运行一定的时间(yanshi)。把press定义为长按模式,设备会一直运行,直到pressup松开,设备即停止(图9)。

后退、左转、右转三个按键定义与此相似,不再赘述。重点说一下开关灯的定义方式。

初始设置开关变量为0,此时灯是熄灭状态,当我们按一次,变量cishu整除2的余数为1,此时灯的状态为点亮,按两次,变量cishu整除2的余数为0,灯又熄灭,如此循环(图10)。

六、远程监控

在前两个案例中我们采用的是现成的网络监控摄像头,这一次,我们充分利用随车手机摄像头。随车手机和控制端手机同时登录QQ,打开视频通话模式实现远程监控与实时通话。通话过程中,使用分屏或悬浮窗模式同时兼顾操作。

至此,一套低成本高性能的網红买菜车改装完毕(图11)。

猜你喜欢

管脚按键滑动
基于有限状态机的按键检测程序设计
一种新型滑动叉拉花键夹具
Big Little lies: No One Is Perfect
一种多方向导光按键结构设计
基于图像处理的异型电子元器件管脚偏移误差检测方法研究
CMOS数字IC管脚电容的估算与测量
滑动供电系统在城市轨道交通中的应用
一种基于变换域的滑动聚束SAR调频率估计方法
HC08芯片JVT测试方法的探究
按键的多种状态检测及消抖处理方法