美元
  • 欧元
  • 英磅
  • 美元
项目ESP32阿度诺市微信

ESP32控件带Arduino运行微信管理器

DFROBOT 2019年12月 475

ESP32控件带Arduino运行微信管理器

FireBeetleESP32板块//www.bctzj.com/product-1590.html

可指令性Arduino管理器,强通用iOSApp允许通过约40个不同部件控制 Arduino板


部分可用部件有:

显示部件

LED部件

开关部件推键部件

knob部件

滑动器部件


Arduino管理员还提供(附加成本):

代码生成器 :上加允许生成基本 Arduino代码支持您选择部件

PIN代码生成器链接部件 Arduino PINs在许多情况下,你不需要写单行代码

语音命令 :允许通过语音命令控制大多数Arduino管理员部件

ESP32编程支持 ArduinoIDE多版自15.0.0 Arduino管理器可用ESP32运行微信代码

ArduinoiOS管理器可从iTunes商店7.99美元Android和MacOSX都可用(请注意所有平台上并非所有部件都可用)。

更多信息、文档、视频教程、库和Arduino管理器实例Arduino主管网站

步骤1:初始搭建
本节涵盖如何安装ESP32和所需开发工具MicroPython

ython系统已安装并配置here:https://www.python.org/downloads)

下级步骤仅在你首次用MicroPython搭建棋盘时完成

搭建一切并运行 步步这些步骤

打开命令提示

安装rshell和estools使用:

pi安装rshellpi安装esptool

上MicroPython硬件ESP32从这里下载https://micropython.org/download.(见ESP32板Firmware部分)

安装所需驱动并定位USB端口ESP32建立串行连接

安装MicroPython固件

sptool.py-chipe32-port
             
              擦除esptool.py-chipe32-port
              
               aud460800写-z0x1000
               
                

连接棋盘使用rshell

Rshell-p
             
              

双重检验iClud签名

if not, go toset并启动iPhone

启动 Arduino管理器iPhone或iPad

打开左侧菜单

拷贝必备python支持代码

返回命令提示并发布命令复制所需软件

Windows系统

cp -r iCloudDrive/iCloud~boco~fabrizio~ArduinoManager/Python/Support/* /pyboard/

MacOS系统

s-r/users/
              
               /Library/Mobile\ Documents/iCloud~boco~fabrizio~ArduinoManager/Documents/Python/Support/* /pyboard/
               

inux系统Linux无法直接访问iCloud系统,你必须使用首选浏览器,从iCloud.com下载Python/Support文件夹到自选目录并输入下命令

s-r
             
              /*/pyboard/
              

关闭 Rshell出入口

准备建简单示例电路并用MicroPython控制Arduino管理器


步骤2:测试电路

ESP32控件带Arduino运行微信管理器
ESP32控件带Arduino运行微信管理器

准备搭建简单测试电路参考电图和面包板图片构建

板测量温度(LM35)和电压至强力计并发至OS设备

OS设备发送命令开关LED1(Yellow)并命令移动Servo

LED2显示OS设备连接板

连接卡阅读器

CLK/SCK转GPIO18
DO/MISO转GPIO19
DI/MOSI转GPIO23
CS转GPIO17


步骤3:配置并运行示例代码

文本编辑器直接从文件夹iCloud驱动器打开示例码(example.py):

Arduino管理员/Python/Support

inux使用下载目录替代

随网络相应修改下列参数

网络SID
网络策略
棋盘IP
棋盘移植
NETWORKMASK(通常为255.552.50.0)
GateWAY地址

ESP32板连接计算机并启动外壳

Rshell-p
             
              
             


复制修改示例到棋盘

Windows系统

cp -r iCloudDrive/iCloud~boco~fabrizio~ArduinoManager/Python/Support/example.py /pyboard/

MacOS系统

s-r/users/
             
              /Library/Mobile\ Documents/iCloud~boco~fabrizio~ArduinoManager/Documents/Python/Support/example.py /pyboard/
              

inux系统

s-r
             
              /example.py/pyboard/
              

切换到Expl向棋盘输入发布命令

重试

启动示例代码

导入示例.main

似曾相识

INFO:AM服务器:Server Init完成INFO:AM服务器:INFO:AM服务器:socket_server

上台显示,你很好去

注意1:每次开机时,你必须使用rshell连接它,切换反转码比启动示例代码自动启动示例代码启动时,您必须重命名文件示例.py至maject.py

Rshell-p
             
              sp/pyboard/example.py/pyboard/main.pyrm/pyboard/example.py
              

注2:不使用rshell和rpl,你可以使用更多方便用户工具写出ython代码并上传某些兼容MicroPython

uPyCrafthttps://github.com/DFRobot/uPyCraft)

通尼市https://thonny.org)

ma-editorhttps://codewith.mu/en/)写作时,你必须安装贝塔版本支持ESP32


步骤4:连接Arduino管理员

连接 Arduino管理员ESP32板时,

启动 Arduino管理器iPhone/iPad

打开左侧菜单

磁带连接板

上传磁带添加新连接

输入下列信息:

连接名 :随你例ESP32运行Python

IP地址 :IP值相同你输入示例.py

IP端口 :与示例中输入的值相同.py

超时 :可原封不动

磁带Ok

选择刚创建连接

几秒后屏幕左下端连接指示器应变绿,红色LED应拆开


步骤5:配置 Arduino管理器

ESP32控件带Arduino运行微信管理器

开关使用底部右切

贴贴插入显示元件

磁场刚下拉并输入:T

您应该能读取LM35测量温度


添加另一个显示部件并输入:MLG

双滑显示部件、开机配置并切换文本

显示元件中文本消息应翻转


添加开关部件并输入:S1

触控开关时,应可开关黄LED


添加LED部件并输入:Led13

LED应跟随板上黄色LED

双击LED部件可选择首选颜色


添加knob部件并输入:knob

移动拨号,servo电机应改变位置


添加自定义部件

双击文件应能看到SD卡根目录中的文件列表并打开文件


添加推键部件并输入:推键1

按下按钮时,红色LED应关上几毫秒并重开

双击推键可选择首选颜色


添加图部件并输入:Pot

打开面包板电容计图应显示


添加定时器部件并输入:A1

双滑定时器部件并分分钟设置时间

定时器过期后,servo电机移到初始位置,连接LED闪存几毫秒


添加登录数据图部件并输入

双接部件和回接刷新

图显示自动存储到SD卡中的温度值


添加命令部件并输入:Cmd_01

双击部件并输入:blink

双击元件

md_01按键,红色LED应关几毫秒后回转


添加控制台部件

md_01按钮时,控制台部件上应显示消息


注1-移动部件移动部件 :

切换编辑模式

长拍部件移动直到边界变红

移动部件期望位置


注2-删除部件删除部件:

切换编辑模式

长拍部件移动直到边界变红

释放指头

滑动部件

简单探索Arduino管理器的一些特征和部分可用部件还有很多东西需要观察学习

下一节专门学习更多例子python代码


步骤6:理解Python代码

ython代码支持 Arduino管理员主要基于回调函数

做工函数定期调用 代码读传感器 命令启动器

processIncomingMessages- 从OS设备接收数据时调用此函数

processOutgoingMessages定期调用向iOS设备发送数据

doSync- 函数连接iOS设备后立即调用并用于向它发送状态信息

进程ARARM报警时调用

设备连接OS设备连接ESP32板时调用

deviceDisconnectedOS设备从ESP32板断开时调用


显示每个函数

DoWork函数中强力计位置读取(pa35.read())以同样方式读取温度传感器并实现电压转换温度后温度存入日志文件

async def doWork():          global pot      global temperature      global todayTSamplingCounter      global todayTNumberOfSamples            pot = pa35.read()          temperature = 100 * getVoltage(pa32)            if todayTSamplingCounter >= 10:        todayTSamplingCounter = 0        todayTNumberOfSamples += 1        if iosController.sdFileSize('TodayT') == 0 or todayTNumberOfSamples == 100:          iosController.sdPurgeLogData('TodayT')          iosController.sdLogLabels('TodayT', 'V1')          todayTNumberOfSamples = 0        iosController.sdLog('TodayT', temperature)      return

进程InwareMessages调用接收的每一消息并有两个参数:

可变- 元件名称发送数据

传值数据关联部件

aync def进程 Int(value)sssservo.duce/servoLog/ioscentral/blink/ioscentral/

S1切换元件S1发送S1时,p5插件设置为1[p5value(int(value))]并开通LEDknob元件Knob1发送值时(范围0,1023),该值转换为范围40,115控制servo电机

进程输出Messages定期调用向连接iOS设备发送数据

async def进程流出Messages (): 等待iosCoverer. writeMessage ('Pot',pot)等待iosCovertrol.writeMessage('T',te
OS设备连接ESP32板并发送信息初始化某些部件如开关元件和Knob元件和显示元件配置为仅文本时,DoSync函数才调用一次

async def doSync(变量):如果变量sssagess

教程作者:Fab64


复习