聚丰项目 > 基于Rico Board的 IoT电动汽车充电桩
基于RicoBoard的充电桩,鉴于RocpBoard开发板的外设资源与内核支持情况,也只是可以完成基本的充电桩的大部分功能,其中包括:外接计量电表、云端数据处理、IC卡计费、充电控制、显示(HDMI问题,间接方式实现)。
jinyi7016
分享jinyi7016
团队成员
q8780456 工程师
电动汽车充电桩的基本功能:;
1.显示与触摸屏输入等人机交互;.
2.IC卡刷卡支付电费;
3.显示屏充电状态显示、计费查询、充电金额显示及余额查询;
4.根据用户选择的充电方式控制充电机对汽车电池充电;
5.能够监测汽车电池的电压、电流、温度;
6.支持外接电度表;
7.能够通过 CAN、以太网或 GPRS 进行数据传输;
8.本地数据量存储;
如下图,是一个比较完善的充电桩计费控制系统的框图。其中大体上包括了充电桩所需的所有功能。
RicoBoard充电桩系统组成与实现方法
而在此次过程中是基于RicoBoard的充电桩,鉴于RocpBoard开发板的外设资源与内核支持情况,也只是可以完成基本的充电桩的大部分功能,其中包括:外接计量电表、云端数据处理、IC卡计费、充电控制、显示(HDMI问题,间接方式实现)。 外接计量电表:使用RS485通讯,Modbus通讯协议与电表进行数据通信,以充电电量为计费依据,此次没有产生真正的充电电流(没有电动汽车),所以电表的计费是不会增加的,这里只是提供了此种方式的功能验证。
这次特地的打样了一块PCB,引出主要使用的外设,并将主要的外设进行分类,接收使用到的接口。
云端数据处理:使用中国移动的OneNet,将充电桩的相关数据上传的云端进行统计,与远程查看。这里使用的OneNet只是一个免费版本的,企业级的使用应该会增加一些新的功能,更完善的数据处理与分析。此部分程序移植于官方基本STM32的例程。
IC卡计费:采用RC522模块,与非接触IC卡进行通信。模块采用SPI通讯接口。开发板本身自带的系统是没有SPI驱动的,这里要自己再次编译内核与设备树,更新系统才可以支持,经过长时间的调试,目前也只有SPI0可以正常工作 ,SPI4还是存在一些问题。
充电控制:在实际上,这部分有很多个设备与元件组成,包括接触器、空气开关等组成的互锁、自锁等等,但是由于手头的资源有限,此次试用仅使用一个磁保持继电器进行功能验证。
显示:此部分是最头痛的一部分,由于我的开发板的HDMI问题,无法显示(其他网友的可以显示),一直纠结于显示问题,无奈只能使用间接的方式实现。通过串口将要显示的数据上传到PC上的linux中的Qt界面上。这种方法,即使用了Qt又可以暂时显示。后续也可以方便的将Qt界面程序移植到开发板上。在没有连接到开发板时的Qt显示:
当充电枪与电动汽车连接好后,在充电桩上刷IC卡,充电桩读取到卡中的数据,并有余额,同时将IC卡写入“使用中”充电状态,即一个扇区的标志字节1为使用中,0为未使用。 将充电状态发送到OneNet。这里是在OneNet云平台上建立了一下在线的应用。
在右侧添加一些控件。
添加一个开关,一个文字、一个折线图,最后应用进行显示时,接收到充电时的数据后的显示如下图所示。
同时上位机的Qt上的显示为,正充电,电流10A,已充电金额1.2元,这里的金额是在一定时间后自动增加的虚拟金额,并不是根据电流、电量计算的,因实际测试时没有真实的电流与电量。
此时接通磁保持继电器进行充电(继电器两端LED灯亮)。
当充电满后或再次刷卡时,清除IC卡中写入的充电状态标志,写入新的余额值、充电时间等等信息。断开磁保持继电器(继电器两端LED灯灭)
将充电桩的““未使用”状态发送到OneNet与Qt上,充电结束。
Qt显示:充电结束,充电金额2.7元,余额:197.3元
超级开发板: 洛阳跟山东都有一堆四轮车,需要这个
回复
动心忍性1234: 您好我是无线电杂志的编辑,我们对您的项目十分感兴趣,请问您有兴趣投稿吗?成为我们的作者除稿费外还有其他优厚条件。敬请参与。投稿请联系QQ260534978.
回复