高端的模组往往只需要简单的开发---涂鸦三明治宠物喂食器记录

 本文章允许涂鸦智能转载使用

作品介绍:

宠物喂食器基于涂鸦模组联网上云+STM32主控,最终用户可以用手机APP控制/语音控制,主要功能是喂食自动化

主要材料:

涂鸦三明治语音 Wi-Fi 通信板(VWXR2):https://go.tuya.com/productDetail?code=CMabbegshygtnv

STM32:https://item.taobao.com/item.htm?spm=a1z09.2.0.0.61462e8dCMlCwk&id=538817606142&_u=tvcquvh7ae0

步进电机+驱动器:https://detail.tmall.com/item.htm?spm=a230r.1.14.14.566569f31ggo9B&id=563681690279&ns=1&abbucket=6&skuId=4182519270016

主要框架:

开发流程:

第一阶段:涂鸦模组

1、登录:https://auth.tuya.com/register?_source=7b811ac2e872ccb62376ba4dfe0568eb 注册Iot账号
2、点击创建产品,找到【小家电】-【宠物喂食器】,选择【wifi】通信协议,填写产品名称,创建产品。
3、填写表单:https://survey.tuyacn.com/survey/q8ywvbqc
4、根据《三明治开发套件领取流程》:https://shimo.im/docs/qCgdXjVPYqjdDWj3/ 提交开发计划书

快递到手以后 一共是3个板子 可以堆积木一样组合,正所谓三明治

研发只需要使用WIFI+语音的板子两外2个是电源相关的 暂时可以放起来

直接PC外接TTL串口是可以供电work的

复位板子 可以在串口用115200看到LOG

注意:这里的LOG是模板自身的,随便用串口助手即可,也可以不看。

现在需要借助涂鸦提供的 涂鸦debug助手 模拟MCU 来和板子通讯 

需要把TXRX拔下来 插到串口UART1 方可

如上图 供电+串口 就可以愉快玩耍了!

这个板子能干啥?

这么说吧

以前M26这种联网模块----------------只提供了TCP/IP的通道 开发者可以自己基于TCP/IP完成联网在移植MQTT协议在对接业务协议

后面出现了BC20这种联网模块-----它内部集成了MQTT协议,抛出AT指令供使用 开发者上手直接去对接业务协议

现在这个模组----------------------------它已经完成了TCP/IP//MQTT/业务协议 开发者完成无感就连云了!!

那么有个问题:业务协议总是人为约定的 需要修修改改的   怎么能封装在内部呢  涂鸦怎么解决的?

涂鸦给的生产工具是比较先进比较全家桶的

修改产品功能的时候会修改这个协议 会重新生产SDK和供PC工具调试的JS文件 

这样就可以解决问题了。

注意:修改以后需要对设备再次配网 。

提示:配网  本地WIFI是5G的 笔记本用360免费WIFI 其实不如WIN1O自带的WIFI热点!
TY360WIFI
TY360WIFI
此时手机接入该WIFI PC助手发送配网指令
板子SW5按一下 LED快速闪烁

 

官方参考链接:https://developer.tuya.com/cn/docs/iot/device-development/embedded-software-development/mcu-development-access/access-mode-simmulator/module-debugging-assistant-instruction?id=K9hs0cj3lf0au

可以结合LOG看到协议执行的流程

 

第二阶段:STM32主控

利用cubeMX建立一个简单的工程 只需要如下几点

1---需要一个UART和模组对接  因为模组的代码只有2句话 就是一个串口搞定 

2---突然觉得没有必要了 因为一个串口就够了 别的接口都是跟着产品走的 我一个IO作为LED的控制 一个tim1高级定时器PA8做为电机的脉冲

SDK主要就是串口编程 

 

 

 

第三阶段:STM32主控+涂鸦模组

因为前面PC已经模拟STM32完成了 这里就是真正MCU上场了 

测试一下 成功

 

第四阶段:电机控制

控制LED比较容易 控制步进电机其实也不难(主要我用的简单)

正是因为电机比较复杂比较专业 所以市场上出现了电机驱动器

我们一般所谓控制电机 其实是控制电机驱动器 接线上是MCU拉3根线和电机驱动器对接

1----IO控制方向  2---IO控制开关    3----脉冲控制电机速度

电机驱动器的接线 A上面三个线对接主控  B供电两根线 C连接电机的四根线

接好后 控制起来就比较简单了 

开关打开 然后发脉冲就可以驱动电机。

高级定时器的比较输出功能 设定一个比较值 向上计数 当CNT=设定的比较值发生中断 翻转电平

同时在中断中修改下一次的比较值 如此一直循环

 

 

代码----:https://github.com/GKoSon/tuyago/tree/master

视频----:https://www.bilibili.com/video/BV1b5411w7Z9/

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值