AVR491:SB200快速入门指南解读
作为一名电子工程师,在硬件设计开发中,掌握各种开发工具和设备的使用方法至关重要。今天我们就来详细了解一下SB200,它是一款用于AVR 基于智能电池应用的演示平台和易于使用的开发环境。
文件下载:ATAVRSB200.pdf
一、SB200和锂离子电池的安全使用
SB200配备了四节锂离子电池,这些电池内置保护装置,能确保用户在正常使用情况下不会受到危险,毕竟锂离子电池是有爆炸风险的。使用Atmel提供的未修改代码示例时,无论使用有保护或无保护的电池,通常都不会有危险。
不过,使用受保护的电池也有一些缺点。内置的保护电子设备会导致一定的能量损失,而且很难测试极端情况,如深度欠压、过流等,因为内置保护会影响测试结果。有时候电池过度充放电还会触发保护机制,使电池失效。所以,当遇到奇怪的现象时,要考虑是否是电池保护装置在起作用。另外,要注意用来选择顶部电池单元的跳线,如果放置不正确,可能会使电池单元短路。
二、SB200的使用示例
2.1 电池充电
SB200的内置充电器可以通过PC应用程序控制充电时间,时间一到就会自动停止充电。即使PC软件关闭或USB电缆断开,充电器也会按照设定的时间自主停止充电。
对于两电芯的锂离子电池组,典型的推荐充电电压是8.4V,充电电流通常是1C。以880mAh的电池为例,充电器会设置为8400mV和880mA,充电时间最长为255分钟,这里设置为120分钟。按下SET按钮,充电器就会以这些参数开始或重新开始充电,此时SB200顶部中间的绿色LED会亮起。
2.2 电池放电
为了评估智能电池在放电过程中的性能,SB200上有一个电子控制负载,它可以通过PC软件进行控制。将滑块拉到顶部,负载可以从电池中抽取高达5000mA的电流。如果通过右键单击负载并选择“Set Load”菜单项,然后直接在编辑框中输入电流值,则可以抽取更高的电流,这可用于短路/过流测试。
拖动滑块可以启用负载,右键单击并选择“Clear load”则可以关闭负载。当负载温度(FET处的PCB)超过125°C时,SB200会自动关闭负载。需要注意的是,125°C非常热,不要触摸散热片。不过,这个负载的设计目的是抽取较高的电流,而不是追求高精度,实际电流通常会低于PC软件中指定的电流值。
2.3 读取SB201智能电池的值
SB201支持SBS数据规范中指定的大多数命令,还能提供“扩展命令”,可以获取单个电池单元的电压和温度信息,并且支持基于AES的电池认证。
所有支持的SBS和扩展命令都列在PC软件的右侧。可以单独调用这些命令,也可以通过复选框选择,点击“Update”按钮会刷新所有被选中的命令。最常用的刷新命令的方法是设置自动更新定时器,它会按照“Tools->Options”菜单中设置的固定间隔刷新选中的命令。
2.4 分流电阻校准
SB201上的分流电阻精度为±1%,如果不进行校准,可能会导致测量不准确。虽然分流电阻在出厂时已经校准,但如果需要重新校准(例如重新编程后),可以按照以下步骤进行:
首先,需要测量从电池中抽取的实际电流,并将其与SB201报告的值进行比较。由于电子负载的精度不够,需要在SB200上通常放置红色跳线的位置连接一个精确的安培表。
将负载设置为例如500mA,查看安培表的测量值,然后从SB200 PC软件中读取分流电阻值和电流。假设安培表显示490mA,SB200报告495mA,分流电阻值设置为10000µΩ,那么可以使用以下公式计算分流电阻的实际值: [Real shunt resistor value =10000 * frac{495}{490} approx 10102 mu Omega]
将计算得到的分流电阻值输入到“Shunt Resistance”编辑框中(点击分流电阻图像可打开),然后按下“WRITE”按钮。此时,SB201报告的电流应该与安培表的测量值相同,这样SB201的固件就校准为使用分流电阻的实际值了。
2.5 FET禁用和存储模式
在Battery Studio主窗口中有两个开关,可以用来启用和禁用SB201上的充电和放电FET。切换开关时,会向SB201发送命令以设置所需的状态。这个功能主要用于开发和评估阶段,不适用于成品。“BatteryMode Read”命令也会更新FET的状态。
2.6 数据记录
SB200 PC软件可以通过两种方式记录数据:一种是在一个“scope”图中显示电池电流和平均电流,另一种是在另一个图中显示电池单元电压。
此外,从SB200/SB201读取的所有命令都可以写入日志文件。这需要指定一个日志文件,并且在自动更新功能开启时进行记录。日志文件使用二进制文件格式,所有选中的命令都会被记录,未选中的命令会记录为空值。这个二进制文件可以导出为Excel或CSV文件,以便进行数据处理。
2.7 显示状态标志
一些SBS命令包含一系列状态标志。为了帮助用户将十六进制值转换为状态标志,只需展开“BatteryStatus”参数,状态标志就会显示出来。
2.8 快速入门指南步骤
- 将SB201 - 2插入SB200中。
- 将大红色的“Number of Cells”跳线设置在“2”的位置(或者插入安培表来测量电流)。
- 将电池单元插入CELL 1和CELL 2插槽,注意电池的极性。
- 将12V电源连接到SB200。
- 按下SB200上的HWB按钮,或者通过PC软件启动充电器来为SB201供电。HWB按钮会启动最长1分钟的充电,直到再次按下该按钮。充电电压会根据连接的SB20x型号进行设置。
- 从AVR Studio中启动AVR Battery Studio SB200 PC软件,或者直接启动。
- 连接PC和SB200之间的USB电缆。
- 验证USB状态是否为“Connected”,并且“Board”是否为“SB201 - 2”。
- 等待SB201完成校准(第一次启动SB201时最多需要30秒)。
- 读取以下命令:
- ManufacturerName(“Atmel”)。
- DeviceName(“SB201 - 2 - dual cell”)。
- DeviceChemistry(“Lithium - Ion”)。
- ManufacturerData(“App note AVR456”)
- 测试认证:
- 点击“Battery Pack authentication”文本或从菜单中打开认证对话框。
- 在“Host Challenge”编辑框中写入“This will fail!!”。
- 按下“WRITE”,然后按下“READ”(读取到的是乱码)。
- 将“AES Key”中的“Gandalf says?”替换为“You cannot pass!”。
- 在“Host Challenge”编辑框中写入“Authentic batt!!”。
- 按下“WRITE”,然后按下“READ”(读回“Authentic batt!!”)。
- 状态应该显示“Authentication Accepted”。
- 尝试从SB201读取命令。勾选以下复选框:
- Voltage
- Current
- RelativeStateOfCharge
- RemainingCapacity
- VoltageCell2
- VoltageCell1
- 点击菜单上的“Update”按钮读取所有值。
- 记录数据:
- 打开菜单中的“Tools->Options”。
- 指定日志文件的位置。
- 按下“Auto - generate filename”单选按钮,然后按下“OK”。
- 注意右侧的图表会显示电池电流和电池单元电压。
- 通过拖动滑块将负载设置为100mA,观察图表变化。
- 增加电流到更高水平,观察电池单元电压的下降情况。
- 将负载保持在500mA,等待SB201中的电池保护装置禁用放电。
- 禁用负载,以8400mV、880mA的参数启用充电器充电30分钟,观察充电电压和电流的变化。
- 禁用记录功能,检查日志文件。
- 探索这个应用程序,享受开发的乐趣。
2.9 故障排除
| 在使用SB200时,可能会遇到一些常见问题,下面是这些问题及对应的解决方法: | 问题 | 解决方案/解释 |
|---|---|---|
| 按下READ按钮后值不更新。 | 检查SB200 PC应用程序左下角的“USB Status”是否为“Connected”,确保USB电缆已连接,并且SB200已通电(DC插孔旁边的绿色LED应亮起)。同时,验证左下角的“Board”标识是否正确识别了SB20x板。如果不正确,检查SB20x智能电池板是否正确插入。还要确保电池插槽中插入了正确数量的电池,并且“number of cells”跳线安装正确(如果设备板识别正确,LED会在跳线应安装的位置亮起)。 | |
| 智能电池AVR断电后无法开启,除非连接充电器。 | 打开SB200充电器,这应该会使SB200顶部中间的“Charger Active” LED亮起。再次尝试读取命令。 | |
| USB连接器附近的LED持续亮起(红色或蓝色)。 | 这表示发生了未处理的错误,需要按下SB200上位于USB和DC插孔之间的微动开关来重置SB200 USB设备。 | |
| 第一次运行SB201固件时,CC - ADC偏移校准需要20 - 30秒,在此期间按READ返回乱码。 | 这是正常的校准过程,校准期间设备板不会响应任何命令。 | |
| 如何测试AES认证,按READ只返回乱码。 | 需要在PC端指定正确的AES密钥“ You cannot pass!”,才能正确解密SB20x的加密回复。指定密钥后,写入一个16字符的字符串,然后再读取。 | |
| SB20x响应命令,但无法从中抽取电流。 | 如果SB20x启动时负载处于活动状态(即放电FET关闭后又打开),电子控制负载中的积分器会饱和,导致短时间内有短路电流流过。解决方法是暂时禁用负载,直到SB20x启用其放电FET。“BatteryStatus”上的扩展参数会提供相关信息。 | |
| 是否可以更改自动更新刷新率? | 使用“Tools->Options”并设置所需的定时器间隔。 | |
| 启用负载放电电池,突然停止放电,且电池电压高于2.7V时无法再次启动放电。 | 这是因为在放电过程中,其中一个电池的电压曾低于2.7V,SB20x为了保护电池而禁用了进一步放电。要启用放电,需要对电池进行短暂充电,打开充电器一段时间即可。 | |
| SB201损坏了我的一个电池单元。 | 通常不是SB201的问题,而是电池单元自身的内置保护不准确,导致在SB201达到限制之前触发保护。通常可以通过打开充电器来恢复电池。(在开发过程中,可能会对电池过度充电或放电,超出保护范围) | |
| Set和Clear按钮有时不响应。 | PC软件可能正在忙于从SB200获取数据(等待响应)。禁用自动更新功能,或者多次按下按钮,直到它响应。 | |
| 能否使用无保护的电池与SB200配合使用? | 不建议这样做,风险自负。如果要移除SB200附带电池的保护装置,记得在之后用胶带包裹电池单元,以免电池插槽使电池短路。 | |
| 电池充满电时电压几乎相等,但接近完全放电时电压差异很大。 | 这是正常现象,因为电池单元的电阻不同,在放电时这种差异会更明显。启用电池单元平衡功能可以使电池在充电时电压接近相同,这对于将电池充电到最大容量非常重要。 | |
| 无法擦除、重新编程或在SB20x子板上启动调试会话。 | 如果SB20x子板上的智能电池AVR中编程的固件导致设备进入断电状态,编程器将无法对设备进行重新编程。这种情况可能发生在设备启动后很快进入断电状态(假设已经尝试过电源循环)。此时,设备关闭了内部稳压器,编程工具控制所需的内部逻辑也关闭了。可以通过将V FET连接到GND,将V REG连接到3.3V来强制设备开启,这样就可以进行擦除和编程了。 |
三、评估板/套件重要注意事项
这个评估板/套件仅用于进一步的工程、开发、演示或评估目的,它不是成品,可能不符合一些或所有适用于成品的技术或法律要求,包括但不限于电磁兼容性、回收(WEEE)、FCC、CE或UL指令(除非板/套件上另有说明)。Atmel以“现状”提供该板/套件,不提供任何保证,所有风险由购买者和后续用户自行承担。用户需要对货物的正确和安全处理承担全部责任和义务,并对Atmel因货物的处理或使用而产生的所有索赔进行赔偿。由于产品的开放式结构,用户有责任采取所有适当的预防措施,以防止静电放电和其他技术或法律问题。
以上就是关于SB200的详细介绍,希望对各位电子工程师在相关的硬件设计开发中有所帮助。大家在使用过程中遇到问题,欢迎在评论区交流讨论。
-
锂离子电池
+关注
关注
85文章
3565浏览量
81394 -
硬件开发
+关注
关注
3文章
206浏览量
25255
发布评论请先 登录
AVR491:SB200快速入门指南解读
评论