【技术实现步骤摘要】
一种基于can通信的可重构化多线程并行上位机系统
[0001]本专利技术涉及电路系统
,具体是指一种基于can通信的可重构化多线程并行上位机系统。
技术介绍
[0002]上位机的作用主要是实时地在线监控数字电源的各项表征参数,运行状态和工作模式等,另外还可以控制数字电源系统。过去,在还没有这类基于虚拟仪器技术的上位机软件还没有出现的时候,人们是使用传统的仪器仪表来完成对电路系统的监控和控制工作。
[0003]上位机软件可以传输数据,实现对数字电源的参数设置,在线校准和逻辑测试。过去,人们在调试这类型电源系统的时候,往往需要辅以许多测试仪器仪表来进行硬件调试工作,以实时得知电路的运行状态等信息。这类仪表数量繁多,读取和保存不方便,而且从外部直接耦合进入电源系统还会引入不知名的干扰,这些问题都会对研发工作造成极大的阻碍。
[0004]此外,在进行软件调试的时候,需要一些控制模型的相关参数进行修改和验证。例如传统的PID控制就需要对比例系数/积分系数/微分系数等控制参数进行调节并观察其工作状态,以此为判据来进 ...
【技术保护点】
【技术特征摘要】
1.一种基于can通信的可重构化多线程并行上位机系统,其特征在于:包括主线程和与主线程连接的副线程,所述主线程包括打开CAN设备、初始化CAN设备、CAN报文传输和接收、CAN设备重启、CAN设备设定改变,所述主线程为一种有序、优雅地进行CAN通信的并行式程序的状态机模式,运行状态由一个枚举型变量中的运行状态枚举来决定,运行状态枚举的数据类型是一种可以被命名的整型常数的集合,来表达主线程的不同运行状态,所述运行状态枚举拥有四种数值:Init、Run、Wait和Exit,处于不同运行状态枚举进入不同的状态运行,同时会根据情况更新运行状态枚举,然后在下一次主线程循环里面进入指定的运行状态,所述主线程包括以下步骤:S1,判断运行状态枚举的值,判断运行状态枚举是否为Exit,判断运行状态枚举为Exit则结束该程序,判断运行状态枚举补位Exit则进入判断运行状态枚举的值;S2、步骤S1中运行状态枚举的值包括有Init、Run、Wait和Exit,S3、所述Init包括以下步骤:a1、对CAN配制信息按名称捆绑进CAN通信标准簇,a2、创建用户事件CANOpen,a3、把新的CAN通信标准簇重新插入主线程数据流,a4、把事件插入主线程的事件数据流、运行状态枚举赋值Wait数值;所述Wait包括事件结构产生自用户事件的更新,所述事件结构产生自用户事件的更新包括并行Open值改变事件、其他值的改变事件,所述并行Open值改变事件打开CAN的步骤为依次执行三个子VI程序,分别为Open子VI程序、Init子VI程序、Start子VI程序,所述其他值的改变事件包括对所改变的其他值按名称捆绑进CAN通信标准簇里面的特定信息值,所述并行Open值改变事件包括对事件数据流进行判断、运行状态枚举赋予Run和Wait数值;所述Run包括以下步骤:b1、事件结构,所述事件结构包括产生自前面板按键控件和用户事件数据流UpdateUIEvent,b2、当为对应控件事件调用CAN发送子程序把打包好的CAN通信标准簇转化为CAN报文,b3、发送CAN报文,b4、当为用户数据用户事件数据流UpdateUIEvent则对应Event属性节点的Disablie赋值,然后对事件数据流进行判断,最后运行状态枚举赋予Run数值,b5、步骤b3和步骤b4最后运行状态枚举都赋予Run和Wait数值的时候,主线程进入下一轮循环;所述Exit包括以下步骤:c1、取消注册事件,注销用户事件和从CAN通信标准簇里面按名称解绑出对应数据,c2、关闭CAN设备,运行状态枚举都赋予Exit数值,则结束程序;所述副线程包括接收线程、循环发送询问报文线程、输出参数修改线程、校准高低位参数修改线程,所述接收线程运行过程包括以下步骤:F1、先判断主线程的状态是否是open,若主线程的状态是open,则调用子VI,F2、通过调用CAN二次库把接收到CAN报文格式转换为CAN通信标准簇,反之,则判断为CAN为打开,延时50ms,
F3、在得到CAN通信标准簇之后,判断其是否为空信息,若不是空信息,则继续进行操作,对报文进行解析和翻译;所述循环发送询问报文线程的功能为及时获取和更新数字电源模块的各种运行参数和模式状态数据,运行过程包括以下步骤:T1、进入循环发送询问报文线程为后对主线程状态进行判断,然后通过一个根据协议规定来自动生成轮询参数的并行程序框图,得到数据帧并组合为询问用的数据帧的字符串,T2、接着,进行对主线程状态进行判断,进入一...
【专利技术属性】
技术研发人员:陈健斌,杨程喻,邹建俊,
申请(专利权)人:广东泰坦智能动力有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。