彭彭123 发表于 2024-8-23 18:50:54

机智云开源自动化控制篇-避障式舵机转向系统


本次采用 STM32F103C8T6单片机、ESP-01S 模块、红外避障模块、SG90舵机(360°)以及 0.96 寸的 IIC 接口 OLED 显示屏,基于机智云平台,完成 避障式舵机舵机转向系统,为智能化场景增添强大功能。      适用的场景: 智能玩具等。      注:本项目用到的外设文件我会在文章最后上传附件,点击放大图片可以清晰参看。使用到的模块:
https://club.gizwits.com/data/attachment/forum/202408/22/183443qlhe55a2a0wl0tl0.jpg.thumb.jpgSTM32F103C8T6


https://club.gizwits.com/data/attachment/forum/202408/22/183444cgtifrvt6nmnmrig.jpg.thumb.jpgESP-01S

https://club.gizwits.com/data/attachment/forum/202408/22/183444own1llfj55unfb71.jpg.thumb.jpg红外避障模块



https://club.gizwits.com/data/attachment/forum/202408/22/183444fx64bbpbjpp6zpp6.jpg.thumb.jpgSE90舵机(360°)


https://club.gizwits.com/data/attachment/forum/202408/22/183445r5p92qxjfovjsqn9.jpg.thumb.jpg0.96 寸的 IIC 接口 OLED 显示屏

基本工作进入机智云开发者中心创建智能产品 机智云开发者中心 (gizwits.com)
https://club.gizwits.com/data/attachment/forum/202408/22/183445lcp30oqgici3hn0k.jpg.thumb.jpg新建数据点
https://club.gizwits.com/data/attachment/forum/202408/22/183446ugc692yl9raeqb2c.jpg.thumb.jpg利用机智云开发者中心的MCU开发便捷快速生成代码
https://club.gizwits.com/data/attachment/forum/202408/22/183446y3zfx3azjqigqwag.jpg.thumb.jpg
ESP-01S烧录机智云固件(参考我的往期帖子)网络地址:安信可ESP8266系列接入机智云方案及问题排查指引 - Gizwits按照文档中的操作即可ESP01s烧录机智云固件:注意:(第十九篇:ESP-01S烧录机智云固件-快速入门-开发文档-机智云(gizwits.com))(ESP-01S烧录机智云固件补充和注意事项-快速入门-开发文档-机智云 (gizwits.com))选择对应大小的flash的进行烧录!!!
固件GAgent foresp8266 (04020034) 下载地址:(https://goms-1251025085.cosgz.my ... 4-1529147544607.rar)
烧录完成即可进入配网(第二十一篇:ESP-01S接入本地wifi和APP调试-快速入门-开发文档-机智云 (gizwits.com))下图为ESP01-s的参数:
https://club.gizwits.com/data/attachment/forum/202408/22/183446tgz7qqgdkm7jvwbg.png.thumb.jpg
下载好固件GAgent forESP8266 (04020034)解压备用,烧录对应大小的flash固件(重要!)https://club.gizwits.com/data/attachment/forum/202408/22/183448sdiqboodd96ny779.png.thumb.jpg
完成上述的烧录固件已经配网,即可进行STM32代码的编写,机智云自动生成是非常好用的,我们创建的数据点,就是可以通过STM32和ESP01s进行串口通信,然后ESP01将数据上次到机智云的服务器转发到我们的手机APP上进行查看、控制等。
模块与单片机的连接:
https://club.gizwits.com/data/attachment/forum/202408/22/183447zgeypsp8cwechccn.jpg.thumb.jpg   代码的编写下载好并解压缩机智云平台生成的代码。打开CobeMX文件
https://club.gizwits.com/data/attachment/forum/202408/22/183448yuh9vpbhgvmzelv9.jpg.thumb.jpg
配置IO口输入模式来接收红外避障模块的电平两种状态:没反射——D0输出高电平——灭灯反射——D0输出低电平——亮灯
https://club.gizwits.com/data/attachment/forum/202408/22/183448bqofmbb5babnfekp.jpg.thumb.jpg
配置360°舵机:选择Tim4 通道1 为PWM口,以控制舵机
https://club.gizwits.com/data/attachment/forum/202408/22/183449nprmy0mmh06hzw7h.jpg.thumb.jpg选择区分文件方便使用
https://club.gizwits.com/data/attachment/forum/202408/22/183449xjz8h3cbes3bsjbc.jpg.thumb.jpg最后生成代码(不可以有中文路径!!)
https://club.gizwits.com/data/attachment/forum/202408/22/183450eovvvyokioe5sewf.jpg.thumb.jpg

打开MDK-ARM工程文件夹
https://club.gizwits.com/data/attachment/forum/202408/22/183450nmjgygka2hovpf3z.jpg.thumb.jpg
添加外设文件
https://club.gizwits.com/data/attachment/forum/202408/22/183450fyc442czy0eexbyw.jpg.thumb.jpg
添加头文件编译路径,以及添加文件进工程
https://club.gizwits.com/data/attachment/forum/202408/22/183451il1poki1m7mltla5.jpg.thumb.jpg
https://club.gizwits.com/data/attachment/forum/202408/22/183451inzh14c1d4nn6xnr.jpg.thumb.jpg

勾选下图中的USE Micro LIB编译前需要勾选此项,我未勾选导致使用keil5里面的调试程序一步一步走没问题,取消调试单片机自行运行有问题。

https://club.gizwits.com/data/attachment/forum/202408/22/183512r2y3uu3xciz75oo2.jpg.thumb.jpg

main.c中包含头文件
https://club.gizwits.com/data/attachment/forum/202408/22/183512dwcaahmoxnoocu0o.jpg.thumb.jpg
Main函数中:
https://club.gizwits.com/data/attachment/forum/202408/22/183512zmt5eldtyzekyskm.jpg.thumb.jpg

机智云开发者中心查看数据
https://club.gizwits.com/data/attachment/forum/202408/22/183513fmphpn88onohng78.jpg.thumb.jpg
在APP中查看数据


https://club.gizwits.com/data/attachment/forum/202408/22/183725sczbzgzgggbob9av.jpg.thumb.jpg调试图


https://club.gizwits.com/data/attachment/forum/202408/22/183514niez7ussj757f76x.jpg.thumb.jpghttps://club.gizwits.com/data/attachment/forum/202408/22/183514ajiili8o5pnjalil.jpg.thumb.jpg








19.jpg (153.79 KB, 下载次数: 6)
https://club.gizwits.com/data/attachment/forum/202408/22/183513z7z6qz55s8c8c8co.jpg.thumb.jpg


页: [1]
查看完整版本: 机智云开源自动化控制篇-避障式舵机转向系统