|

楼主 |
发表于 2020-5-1 18:58:08
|
显示全部楼层
本楼讲解原理 制作等乱七八糟细节
借用qrut大佬的帖子,里面测试的运行电流和堵转电流:
https://www.mydigit.cn/forum.php?mod=viewthread&tid=135770
除了1挡的堵转和空载差值不大以外,其他挡位的堵转电流都挺大的,所以其实计算不是太严谨的测试方法,也足够保护了
首先是电流检测/堵转检测原理
可以看到板子上用的这个mos管
型号EMA09N03CS
25V 50A 内阻9m欧
GS电压加到5V的时候 典型值12m 最大值15m欧
那么就是利用这个12m欧左右的导通电阻作为检流电阻
在mos关闭时,借用t12控制器的原理,用电阻串二极管保护运放输出不过压
R2是测量限流电阻 D2就是借用它0.2V的压降做保护
本来设计了直接进单片机io腿的方案,想着这样可以节约掉一个运放 电路更简单
但是嘛,后来算了下,5V供电的10位单片机ADC,一格的分辨率才5mV,相当于12m欧取样,要差不多400mA才能喂得动一格ADC,再加上本身的噪声,啥也测不出来了
然后呢 需要adc和pwm输出同步运行,才可以测出在导通时的电流。所以这才是选择stm8的原因。如果用stc等单片机,就只能软件翻pwm输出了,才能保障adc的测量对齐。
所以说stm8就时香在这里,可以通过定时器1设置合适的触发信号,然后直接触发adc的采样
同时呢,adc模块集成长度为10次采样的缓存,可以一次采样完所有通道再来缓存中取数据。stc表示根本没听说过
所以设置了,在pwm输出的下降沿触发adc采样,然后一次采样 输入系统电压、结果运放放大后的mosfet电压降和内部电压基准,主循环用查询状态机方法读取转换结果,整个程序跑起来以后没有任何delay
操控机制
分为两个运行模式,常开模式和点动模式
常开模式用原设计位置的按键开启,使用方法和原来的控制板一模一样,5档循环,速度也是一样的。
点动模式,用加出来的按键控制,按住动,松开停。然后在点动按下的时候,按常运行键调整点动的速度,也是5档
led运行机制
绿色led在不运行的时候 闪烁,电机运行时,常量
蓝色led在电机运行时 根据电机速度闪烁,闪烁频率和原装的差不多 满速运行的时候常亮
红色led显示错误状态 常亮为堵转保护(设置2后自动恢复 类似电源打嗝)快速闪烁为过压保护(目前设置18V)。慢速闪烁时欠压保护(目前设置是7V)(因为单片机如果供电小于5V,mos的导通电阻就变了,堵转保护会乱套)
这些设置的保护阈值都是可调的
pcb有误
PCB在画的时候脑抽了吧输入电压测量接到了没有adc输入的脚上,所以改了一版,所以看到上面的板子上有飞线
现在上传的文件的是正确的
焊接图
程序注意事项
所有的配置消息都在头文件sys_conf.h里面
这些是可以改的
触发阈值 触发时间 打嗝时间等参数最好根据自己的情况改一改 毕竟每个人习惯的不同
程序就占用了2K空间的样子 剩下的可以改出朵花来都行
开源电路板设计文件-可以直接用于打样
开源所有代码
严禁用于商业用途
严禁用于商业用途
严禁用于商业用途
二次开发需开源且注明原作者和标注本贴链接
二次开发需开源且注明原作者和标注本贴链接
二次开发需开源且注明原作者和标注本贴链接
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|