钻石会员
主题
帖子
积分11939
阅读权限50
注册时间2012-3-2
最后登录1970-1-1
在线时间 小时
|
本帖最后由 cdhigh 于 2023-10-27 07:11 编辑
这个是GandF老师的M8V6电子负载的升级版,MCU从Atmega8改为Atmega328P/Atmega644P,屏幕从2004改为12864。
并适当优化硬件电路的部分细节,提高精度,避免振荡。
m328v6解决了哪些问题/中间的一些过程和一些图片在另一个帖子有
M328V6电子负载开工(M8V6负载的12864版本)https://www.yleee.com.cn/thread-90686-1-1.html
电路图解读(如看不清楚,附件PDF可以随意放大)
M328V6电路图综合了GandF、shj117、donglele2005等人的研究成果,在此一并鸣谢!
和GandF的原M8V6不同的部分都是可选的,如果您已经有一个原电路板正常运行,也可以不改。
* 原电路图容易振荡,特别挑MOS管,新电路图增加了推挽MOS驱动电路(Q1/Q2/R70/D5/D6/R71)和运放反向端补偿RC网络R69/C52,C1也修改为103
* 最大放电电流通过修改检流电阻R20实现,量程越小电流精度越高,50毫欧大约5A,25毫欧大约10A,17毫欧大约15A(固件最大支持15A)
* 如果您需要经常测试大电流,但是检流电阻温度太高,此时可以将R49/R52修改为20K,OP07的放大倍数设置为2,这样检流电阻阻值可以缩小一倍,比如量程为15A时R20=8毫欧
* 图中方框"500mA小量程电流(可选)"中的电路为可选电路,运放可选择其他单电源低失调轨到轨型号代替,增加此电路可以让小电流精度更高,分辨率达到0.1mA,但仅适用于贴片版的M328P,DIP28封装的M328P没有ADC6管脚,如果使用此电路,则需要烧录标识adc6的固件。
* 最大测试电压通过修改R28/R32比值实现,量程越小电压精度越高,R32=8K2,则电压=33V,R32=6K8,则电压=40V,R32=5k6,则电压=47V, R32=3k9,则电压=66V(固件最大支持65V)
* R2给LM358的2脚一个偏置电压,避免空载时MOS关不断,除此之外,也给LM358的5脚一个偏置电压,补偿ADC输入通道的零点误差,可以改善小电流精度,取值需要调整,最好的方法是进入校准电流菜单,不接电流线,空载时确保ADC有底数,这样就跨越了ADC的测量零点。如果ADC没有底数,则减小R2,如果底数太大,则增大R2,底数至少要大于64,底数大一些则小电流稳一些,但会浪费ADC量程范围
* D7为防反接二极管,需要大电流的肖特基二极管并妥善散热,副作用是降低最低可测电压,有低电压测试需求也可以考虑不接,此二极管也可以替换为外接分功电阻用于提升最大测试功率
* ZD1只是额外保护作用,如果不想接也可以不接
* R25决定交流内阻的量程,100R时输出电流约5mA,量程为1000毫欧,R25=50R时输出电流约10mA,量程500豪欧
* 蜂鸣器需要使用无源蜂鸣器,最好是压电陶瓷型的,如果是电磁式的(使用万用表测试有电阻),则需要三极管驱动,IO口无法直接驱动
* CH340的VCC不要和系统电源VCC接在一起,接在一起则无法实现通过串口升级固件功能,CH340的VCC仅接到USB插座
* 如果串口下载需要自动复位到bootloader功能,可以将CH340的13脚(DTR)通过一个104电容连接到M328P的RST,并且去掉RST的原先的接地电容C14,RST再通过10K上拉,副作用就是在有些电脑上会导致连接上位机时复位
* 请做好解耦去耦,每个芯片旁边最好都放置一个104电容
* 晶振换成16M的吧,M328P执行起来会轻松一些,屏幕刷新也更快,当然,继续发布支持8M的固件,8M晶振运行也没有任何问题
M328V6特性
* 兼容Atmega328P/Atmega644P
* 支持12864 LCD/OLED (ST7565/ST7567/ST7920/SSD1306等)
* 支持放电电压曲线显示,尽量甩开上位机
* 支持电压电流多点校准(最多8点),有效规避非线性问题
* 支持温漂补偿,冬天夏天都准准的
* 支持恒流/恒阻/恒功率模式
* 支持四线测试和带线损补偿的两线测试
* 支持直流内阻和交流内阻
* 增加电流缓升功能,避免过冲电流烧管
* 最大电流和最大功率可调(最大电流限制在15A内,最大功率限制在650W内)
* 库仑计支持安时和瓦时,安时最大999.99Ah,瓦时最大99999Wh
* 支持温度显示,温度保护(OTP)和自动PWM风扇,各温度点均可调
* 改进的编码器操作,更便捷
* 支持预约开关负载/周期开关负载
* 支持四组预置电压电流
* 支持自动带载/卸载功能
* 支持USB串口或蓝牙串口和上位机双向通讯,上位机可以全功能的控制下位机
功能展示
第一屏(主界面)
第二屏(放电电压曲线显示)
此功能的实现让上位机的必要性已经大大减弱,尽管因屏幕分辨率不高导致曲线细节不够,但是一般应用时仅需要了解大概的放电平台,所以基本够用,为了最大化曲线细节,电压和时间刻度均为自适应,屏幕最顶端为本次放电的最大电压,最底部为本次放电的最小电压,开始放电后每秒记录一个电压,满一屏后时间加倍为两秒,原先的记录每两个点保留一个点,曲线缩短为原来的一半,再次满屏后再加倍为四秒,依此类推。
第三屏(大字体电压电流表)
此屏的主要用途是电子负载空闲时可以当作"台表"使用,大字体方便观察,可以部分的代替万用表。
做为"台表",在多点校准和512次过采样累加的加持下,精度是可以满足一般使用要求的。
危险秘籍:在此界面下,如当前没有在放电,长按中键5s切换为真实电流表模式,强制MOS完全导通,此时字母A会一直闪烁,在字母A的下面也会出现一个横线表示MOS直通(主界面的字母A下面也有一个闪烁横线,时刻提醒),使用电流测试线串入需要测试的电路即可像万用表电流档一样测试电流。如果需要切换回普通电子负载模式,再次长按5s或关机重启即可。
再重申一次,使用此MOS直通功能后果自负,万一万一万一忘记切换会普通电子负载模式,就直接接入被测电源而且被测电源没有短路保护,可能会放烟花!!!
第四屏(大字体时钟界面)
此屏为纯粹时钟,排除一切干扰信息,用途是电子负载空闲时可以当作桌面计时工具使用。
可以通过上位机APP同步上位机的时间来做实时时钟。
如果你喜欢折腾,也可以外挂一个ESP8266来做WIFI实时授时。
但是我一般用它来做番茄钟/闹钟使用。
方法是设定一个预约放电时间比如30分钟,30分钟后会自动启动放电,但是因为没有接入电压源,所以会马上自动停止放电,闹铃响起,起到闹铃作用。
你说用电脑和手机就可以,何必那么麻烦,嗯,当我什么都没说。
第五屏(交流内阻表)
此屏放到最后是为了更便捷的打开此界面,猛的向右一旋编码器即可进入,更方便开机后直接测试交流内阻。
首页也显示交流内阻,增加此屏不是功能重复,除了一方面使用大字体方便观察,同时也有一个“自动开关交流内阻模块”的功能:
切换至此界面自动打开交流内阻测试,离开此界面后恢复之前的交流内阻模块状态。
如果需要同时测试电压,建议仅将电压V+端子并接到交流内阻输入端(接C3/1UF电容的端子),而交流内阻输出端(C10/100UF电容)保持和输入端分离,否则空载时内阻和电压都是乱的(不管如何,正常接入电池测试时都是正确的)。
注:正常放电时不建议同时开启交流内阻并且并接到电池,因为电池长时间通过交流电流可能对电池有一些损伤,并且关闭交流内阻也可以让程序运行的更有效率
改进的按键操作
1. 正常锁定状态下(屏幕上方中间的菱形闪烁)左旋进入ON/OFF锁定状态(屏幕下方中间的ON/OFF闪烁)
2. 正常锁定状态下单击弹出工作菜单(不需要长按了,方便很多) [注1]
3. ON/OFF锁定状态单击启动放电或停止放电
4. 任何时候长按弹出菜单(在设置电压电流状态或ON/OFF锁定状态时也可以马上弹出菜单)
5. 正常锁定状态下双击直接进入调整电流模式 [注2]
6. ON/OFF锁定状态下双击打开预置电压电流界面,快捷设置您常用的电压电流
7. 如果已经处于调整电压或电流状态,按住中键再左旋切换为调整截止电压状态,按住中键再右旋切换为调整放电电流状态
8. 锁定状态下旋转编码器选择显示的界面(共五屏,第一屏有两种锁定状态)
* 注1: 从v6.37开始,修改为双击弹出工作菜单 *
* 注2: 从v6.37开始,修改为单击直接进入调整电流模式 *
熔丝位
熔丝位烧录不对也可能正常运行,但是可能容易丢配置数据,需要经常校准。
使用bootloader
低位:0xff
高位:0xd6
扩展位:0xfc
加密位:0xef
不使用bootloader
低位:0xff
高位:0xd7
扩展位:0xfc
加密位:0xff
上位机
上位机软件
M328v6继续兼容“笨熊”的老版上位机(https://www.yleee.com.cn/thread-1841-1-1.html)。
除此之外,我还开发了新版的上位机,支持有线和无线蓝牙连接,除绘制曲线图功能外,还可以全功能的控制下位机,基本上能在下位机操作的功能都能在上位机操作实现。
支持Android/IOS/Windows/Linux/MacOS,但是仅提供Android/Windows的二进制包,其他平台尚未测试,并且需要自己编译。
新版上位机源代码
https://github.com/cdhigh/m328v6host
上位机协议
(避免帖子内容太多,这部分已删除,请参考固件压缩包内的使用说明书)
固件:V6.30 初始版本
M328V6_V630.rar
(305.82 KB, 下载次数: 83)
2022-03-21 发布下位机固件 V6.31 (建议重新校准电流,可能需要重新调整屏幕方向和重设最大功率限制)
1. 增加 [data logging] 功能,使用方法参考用户手册的章节 "长时间数据记录应用"
2. 按键操作增加一个"ON/OFF锁定状态",正常锁定状态下左旋进入,此状态下单击可以启动或停止放电
3. 校准过程增加一个校准零点步骤(请参考用户手册说明)
4. 功率和能量显示小数点后两位(上位机从V1.2.1开始支持)
5. 恒阻模式的电阻单位从毫欧修改为10毫欧,提高上限到655欧(上位机从V1.2.1开始支持)
6. 上报到上位机的Ah最大值从65.535提高到99.999(下位机可以显示999.99)
7. 停止放电后将内阻数值清零避免上位机一直显示之前测试的数值
8. ST7565屏增加一个配置项"Offset X",适配一些不同厂家的奇怪屏幕
9. 计时变量从16位增加到32位,从最大18小时提高到99小时
10. bugfix: 上位机和下位机偶尔同时发送数据时导致上报缓冲区部分数据被覆盖
M328V6_V631.rar
(1.16 MB, 下载次数: 33)
2022-04-01 发布下位机固件 V6.32 (不需要重刷EEPROM,需要重新设置双击速度,否则双击会失效)
1. 增加用于两线测试模式的线损补偿功能(字母V下有横线表示线损补偿)
2. 增加双击速度配置项(值小一些界面反应快一些,零为禁止双击)
3. 增加按键蜂鸣提示功能
4. ST7565及其兼容屏幕的X偏移可选0-4个像素
5. bugfix: 退出工作菜单后的瞬间不能双击进电流
M328V6_V632.rar
(1.2 MB, 下载次数: 35)
2022-04-05 发布下位机固件 V6.33 (不需要重刷EEPROM,不需要重新校准)
1. 增加预置电压电流(最多4组)功能,可以快捷设置常用的电压电流
2. 增加第四屏:时钟界面
3. 串口协议增加一个上位机时间同步到下位机的命令(上位机1.2.3支持)
4. 放电曲线屏幕显示本次放电时间
M328V6_V633.rar
(1.39 MB, 下载次数: 42)
2022-04-26 发布下位机固件 V6.34 (如需要小电流量程,需要重刷EEPROM)
1. 支持使用ADC6接入小电流量程(可选),分辨率为0.1mA
2. 增加自定义开机图像的功能
3. 增加屏幕反显开关
4. 去掉过流提示门限设置菜单项,内部修改为ADC数值溢出后直接提示过流
5. bugfix: 偶尔会出现不管波特率设置为多少,启动后串口的波特率都固定为38400的情况
M328V6_V634.rar
(1.93 MB, 下载次数: 38)
2022-05-10 发布下位机固件 V6.35 (从6.34升级过来不需要重刷EEPROM,不需要重新校准)
1. 增加自动带载功能(检测到输入电压达到某一个数值后自动开始放电)
2. 增加第五屏:交流内阻表。切换至此屏自动打开交流内阻
3. 增加线损补偿单独开关,更方便快捷的启用/关闭线损补偿
M328V6_V635.rar
(2.03 MB, 下载次数: 97)
2022-09-18 发布下位机固件 V6.36 (从6.34升级过来不需要重刷EEPROM,不需要重新校准)
1. 兼容M644P/M328P
2. 新增中文界面(仅M644P版本)
3. 增加设置屏幕对比度的串口命令
4. 恢复DC Test功能(测试电源最大能力,完成后显示最大电流和最大功率)
5. bugfix: 16MHz晶振时ADC转换速率设定过高,可能会影响ADC精度
6. bugfix: Ah/Wh统计超过65535时归零
7. bugfix: 增强串口协议处理鲁棒性,解决JDY-31蓝牙模块工作不正常问题
M328V6_V636.rar
(2.32 MB, 下载次数: 139)
2023-10-26 发布下位机固件 V6.37 (从6.34升级过来不需要重刷EEPROM,不需要重新校准)
1. M328P可选使用ADC5做为ON/OFF按钮
2. 修改按键逻辑,交换单击和双击操作。新的操作为:单击开始调整电流,双击弹出菜单
3. 增加一个串口使能配置,不使用串口功能时可以节省MCU资源
4. 增加一个自动锁按键时间设置,设置为零则不自动锁按键
M328V6_V637.rar
(2.59 MB, 下载次数: 63)
电路图(V1.1.0修改MCU复位电路和一些网络标号,并增加风扇驱动电路):
M328V6-sch-v1.1.0.pdf
(1.18 MB, 下载次数: 56)
(V1.2.0去掉电压电流零点补偿偏置电阻,ICL7660加上接地脚):
M328V6-sch-v1.2.0.pdf
(1.2 MB, 下载次数: 45)
(V1.2.1增加蜂鸣器类型描述,修改OP07的一个反馈电阻标号,修改风扇驱动限流电阻标号)
M328V6-sch-1.2.1.pdf
(1.2 MB, 下载次数: 162)
(V1.3.0增加可选的小量程电流检测电路,增加M328P的RST脚上拉电阻)
M328V6-sch-v1.3.0.pdf
(1.47 MB, 下载次数: 143)
(V1.3.1增加M328P的ADC5用做ON/OFF按钮的提示)
M328V6-sch-v1.3.1.pdf
(1.48 MB, 下载次数: 47)
用户手册:
帖子上的内容只是部分,其他详细的内容包括各配置项和校准步骤等都在使用手册内
(已删除,每次更新后用户手册合并到固件发布压缩包内)
bootloader:
如果希望使用bootloader,压缩包内部有8M和16M晶振的bootloader,根据使用的晶振频率,使用任何有效的ICSP烧录软件烧进M328P即可,之后通过串口连接电脑使用AVRduess升级固件,在点击“开始编程”按钮后大约1s再打开电源开关即可开始下载,很方便。
校准完成后也可以使用Avrduess将EEPROM读取出来备份到电脑,万一以后配置丢了可以仅烧录EEPROM即可免除重新校准的麻烦。
M328V6_bootloader.rar
(1.73 KB, 下载次数: 87)
Avrduess2.13.rar
(530.58 KB, 下载次数: 66)
新版上位机APP(可以在APP内直接更新):
m328v6_apk_V1.2.3.rar
(21.89 MB, 下载次数: 91)
m328v6_win_V1.2.3.zip
(10.18 MB, 下载次数: 104)
用于自定义开机图像的软件工具:
m328v6v7splash_v1.1.rar
(7.59 MB, 下载次数: 25)
用于分析校准数据的工具,将EEPROM读出来保存为二进制文件,然后在命令行执行这个命令或直接将eep.bin拖到parseeeprom.exe上,即可在同一个目录下生成一个html文件:
parseEeprom_m328v6.zip
(2.65 KB, 下载次数: 25)
每个版本的新功能描述楼层
V6.31: https://www.yleee.com.cn/forum.p ... id=90734&pid=929098
V6.32: https://www.yleee.com.cn/forum.p ... id=90734&pid=929355
V6.33: https://www.yleee.com.cn/forum.p ... id=90734&pid=929518
V6.34: https://www.yleee.com.cn/forum.p ... id=90734&pid=930176
V6.35: https://www.yleee.com.cn/forum.p ... id=90734&pid=930464
[zhqsoft的开源PCB](https://oshwhub.com/zhqsoft/m328-dian-zi-fu-zaig01)
[M8单片机恒流型数字电子负载及交流内阻测试仪V6](https://www.yleee.com.cn/thread-6795-1-2.html)
[M8单片机恒流型数字电子负载及交流内阻测试仪](https://www.yleee.com.cn/thread-1603-1-1.html)
[M8电子负载加差分电路,实现四线测量](https://www.yleee.com.cn/thread-29978-1-1.html)
[M328V6电子负载开工(M8V6负载的12864版本)](https://www.yleee.com.cn/thread-90686-1-1.html)
[笨熊的上位机](https://www.yleee.com.cn/thread-1841-1-1.html)
|
评分
-
查看全部评分
|