[STM8] STM8S的无刷直流电机控制系统的设计

[复制链接]
3692|34
 楼主| hanzhen654 发表于 2019-2-27 14:33 | 显示全部楼层
程序流程图  
69185c762f29cf95e.png


 楼主| hanzhen654 发表于 2019-2-27 14:34 | 显示全部楼层
软件平台的开发
在完成硬件平台的开发, 生成网表和比特流之后, 转入软件平台的开发。 使用EDK提供的SDK(SoftwareDevelopment Kit)工具来完成软件的设计, 软件部分程序的编写可以采用C语言实现, 并可调用SDK提供的大量库函数, 简化编程。  

 楼主| hanzhen654 发表于 2019-2-27 14:38 | 显示全部楼层
在完成程序初始化后, 首先判断自然采光是否满足办公照明要求, 满足则不打开人工照明; 如果不满足则再判断办公室是否有人, 有人则打开人工照明, 无人则延时30秒, 如果依然无人则关闭人工照明, 如果延时期间有人进入则打开照明。 增加延时的目的是为了在人员频繁进出时, 防止照明反复开关, 避免缩短灯管寿命以及额外的浪费。
 楼主| hanzhen654 发表于 2019-2-27 14:38 | 显示全部楼层
系统调试
在MicroBlaze设计中调试通常可以采用ChipScope核进行逻辑分析。也可以在系统配置时加入串口模块RS232, 利用串口设备进行串口打印输出, 可以直观地将程序调试结果和中间运行结果反映给用户。 在调试过程中, 通过模拟改变各传感器的状态, 观察继电器的开合情况和串口数据输出。 经过多次实验表明, 该系统完全达到设计要求。  

 楼主| hanzhen654 发表于 2019-2-27 14:39 | 显示全部楼层
相连的I/O口的电平状态来获得转子的位置信息。 换相则是根据获得的位置信息对电机进行换相。 同时, 设置ADC每隔一定时间读取给定的速度, 并转化成相应占空比的PWM波对电机进行调速。
 楼主| hanzhen654 发表于 2019-2-27 14:40 | 显示全部楼层
实验结果及分析
本控制系统的部分测试结果如图8所示。 图7表示的是电机转动时6个MOS管的输入波形情况。 如图8所示, 位于同一相的上下两臂的输入波形为互补波, 可以防止上下两臂同时导通, 对电机造成损坏。 而另外一相的下臂则为常开信号。 这样可以通过改变上臂的PWM占空比来进行调速。 实验证明, 本控制系统能很好地控制电机的换相与调速, 性能良好。
  
 楼主| hanzhen654 发表于 2019-2-27 14:41 | 显示全部楼层
MOS管的输入波形
442235c763100a3a15.png
xiaoqizi 发表于 2019-3-8 12:54 | 显示全部楼层
很不错的资料
木木guainv 发表于 2019-3-8 12:55 | 显示全部楼层
感谢楼主分享
 楼主| hanzhen654 发表于 2019-3-9 14:06 | 显示全部楼层

一般吧,图不是很清楚
 楼主| hanzhen654 发表于 2019-3-9 14:06 | 显示全部楼层

应该的,好资源大家一起分享
xiaoqizi 发表于 2019-3-11 15:33 | 显示全部楼层
hanzhen654 发表于 2019-3-9 14:06
一般吧,图不是很清楚

还可以 能看清关键数据
Zpc 发表于 2019-8-7 10:55 | 显示全部楼层
感谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部