前言

 最近做了一个电动窗帘的控制工程。简单点说就是实现电动窗帘的校准模式,窗帘移动到任意位置。

说明:

 本文档为原创,转载请注明出处,要进行商业合作请联系本人1151313194@qq.com。

软件架构

软件架构如图:

软件编程思想参考硬件框图,由以下软件模块构成:

2.1 驱动模块

程序:DC_Motor_driver.c
功能:电机正反转,调速
<1> 4路MOS桥电路
<2> 1路MOS+1路单刀双置开关

2.2 Sensor单元:

程序:DC_Motor_hall.c
功能:电机测速、正反转判断、距离测量

2.3 安全监测

程序:DC_Motor_Security.c
功能:电流监测(目前未完成)、堵转监测

2.4 正反转堵转监测库

程序:DC_Motor_stall_lib.c
功能:正转卡死检测,反转卡死检测,任意位置卡死检测。

2.5窗帘

程序:Curtain.c
功能:窗帘工作模式的 具体实现,所有窗帘都具有的功能。实现窗帘校对功能,窗帘开关,指定长度开(0-100)

2.6杜亚窗帘

程序:Curtain_duya.c
功能:杜亚窗帘的功能接口

2.7用户指令接口

程序:bsp_usart.c
功能:解析串口指令,执行窗帘动作。

MCU软件资源需求


MCU软件资源需求:
<1 >外部中断的边沿触发(HALL信号)要能被快速执行,原因是HALL做位置检测,要保证实时性。
<2> 大while循环里面的窗帘任务循环在待机模式下可以1s执行一次,但是在窗帘动作的时候,由于要做位置检测,要保证至少10ms执行一次。

目前该demo基于STM32G431,是基于STM32CubeMX软件生成的标准工程,占用的ram大概1.7K,flask 24.3K,实际窗帘电机的资源小于该数值。

STM32G431控制窗帘电机-软件架构相关推荐

  1. STM32G431控制窗帘电机-窗帘电机拆机

    前言 最近做了一个电动窗帘的控制工程.简单点说就是实现电动窗帘的校准模式,窗帘移动到任意位置. 说明: 本文档为原创,转载请注明出处,要进行商业合作请联系本人1151313194@qq.com. 一 ...

  2. STM32G431控制窗帘电机-软件协议接口视频演示

    前言 最近做了一个电动窗帘的控制工程.简单点说就是实现电动窗帘的校准模式,窗帘移动到任意位置. 说明: 本文档为原创,转载请注明出处,要进行商业合作请联系本人1151313194@qq.com. 电动 ...

  3. 【Arduino】APDS9960S手势模块控制馨品窗帘电机并在5110屏中显示指令

    需要准备的材料: Arduinio IDE Arduino开发板 馨品窗帘电机 APDS-9960手势模块 RS485 to TTL USB-TTL 杜邦线若干 串口工具 一.5110Nokia屏参考 ...

  4. 如何快速设计一款智能窗帘开关产品?APP即可控制窗帘动态

    生活的快节奏发展推动了智能家居的快速迭代,实质上是解放人们的双手,简化生活的模式,让生活更加舒适便捷.涂鸦智能窗帘开关就很好地贴合日常生活中的各个场景,不仅可远程控制,各个角落尽在掌握,还能定时模式, ...

  5. [米家]窗帘电机【立创开源】

    能够连接WiFi,利用点灯平台(官网:点灯科技)接入米家,能够用小爱同学控制窗帘开关. 除了使用小爱同学控制之外还能利用我做的低功耗无线开关来控制(工程链接:[低功耗 | 可充电] ESP8266无线 ...

  6. Aqara网关、yeelight智能灯、智能窗帘电机如何实现场景化互联?

    我们为什么要买智能家居呢?是为了方便还是为了纯粹的玩?无需使用遥控器,光利用手机和语音就可以操控,甚至是自动化.如果是为了好玩的话,那么买智能家居,肯定少不了联动这一环节:如果连联动都不能实现,那买智 ...

  7. 智能窗帘电机究竟有何亮点?智汀小米有何优势?

    在众多智能家居的设备之中,有一款比较"冷门"的设备,这款设备在部分用户群体的眼里变得可有可无,这便是智能窗帘电机. 有不少朋友认为这款设备在很早以前就有了呀,跟传统的电动闸门算是同 ...

  8. 基于单片机的蓝牙控制窗帘电路系统

    设计简介: 本设计是基于单片机的蓝牙控制窗帘电路系统,主要实现以下功能: 可通过LCD1602显示温湿度.光照强度.窗帘状态和模式: 可通过按键调整光照强度最小值: 可通过蓝牙连接手机进行远程控制: ...

  9. 智汀如何让绿米Aqara无线开关一键联动不同品牌的智能设备?以智汀窗帘电机、星辰智能台灯为例

    上期跟大家说过智汀可以不通过Home Assistant系统就可以接入不同品牌的智能家居设备,那究竟 是如何接入的呢?今天小编就手把手教学: 要注意,一定要先在智汀家庭云APP里安装好智慧中心(SA) ...

最新文章

  1. windows 下 sublime Text3 做 Python 编辑器
  2. 深度学习100例-卷积神经网络(CNN)花朵识别 | 第4天
  3. es6 --- Reflect的静态方法
  4. Linux桌面需要强制访问控制,RHCSA 系列(十三): 在 RHEL 7 中使用 SELinux 进行强制访问控制...
  5. RabbitMQ 延迟插件的作用
  6. 使用WM_QUIT终止线程
  7. 配置linux普通用户无密码执行sudo命令
  8. linux下mysql连接_Linux下MySQL C++连接操作
  9. MySql 初步整理
  10. LayaAir HttpRequest 网络访问
  11. tetp服务器怎么上传文件,tftp服务器ip是什么 TFTP服务器怎么设置
  12. Premiere Pro CC 2019破解教程
  13. C语言入门习题系列一(含答案)
  14. vmware7序列号
  15. 除去工作赚到第一桶金10W+,我都做了哪些事儿?
  16. notepad++打开bin文件
  17. AI绘画与虚拟人生成实践(二):智能不智障!用chatgpt自动写爆款内容
  18. 第五届 蓝桥杯 海盗分金币 C语言
  19. STM32F103C8T6平衡车
  20. 中国饮料碳化设备市场趋势报告、技术动态创新及市场预测

热门文章

  1. 串口工具securecrt_SecureCRT配置交换机
  2. mysql的事件探查器_用SQL Server事件探查器创建跟踪
  3. php 判断手机登录是手机还是PC
  4. 电脑感觉,电脑进入系统突然之间感觉像慢动作
  5. 社区团购小程序怎么开发
  6. Eclipse下开发WAP网站
  7. CC65 开发FC/NES 游戏(一)环境搭建(2021-04-27更新部分内容和修改部分错误介绍)
  8. 4分钟对拉300多次,谷歌用AI研发「乒乓球机器人」
  9. Android Studio Can't find resource for bundle java.util.PropertyResourceBundle, key configurab 是中文包错
  10. C++Test软件下载安装使用试用