当前位置:首页>案例>大型航空科研设备上位机开发

    客户是某大型航空研究所

  

某大型国有航空研究所的大型模拟实验设备。下位机是西门子,有大型机械设备,开发的上位机。(因为涉密,图片有意模糊)。原来是别的公司用Labview开发的,但是甲方客户不满意,指定用c++开发并改写。下位机的公司找到我们合作。。

  

界面使用QT了库。语言c++,使用TCP协议和下位机连接,网络协议采用的select模型。

  

发送指令到下位机,接收下位机即时发出的各种状态信息,显示在各指示灯及波形图上。下位机是西门子的。

  

原来的应用层内部通信协议,使用Wireshark进行的抓包分析。

  

数据传输格式,使用的IEEE754浮点格式。发送数据到下位机,先要进行c++浮点类型转换为IEEE745浮点类型。收到下位机的数据,需要将IEEE754转c++的浮点。

  

下位机发送的状态信息很密集,每秒很多条。有的是按bit位组织的,要进行解析。判断有改变才更新界面。

  

对下位机控制的逻辑很复杂,比如相位同步指令,用户点了按钮后,上位机要判断当前所处的逻辑状态,以及下位机当前运行状态,等待满足条件后再发送指令给下位机。

  

界面上曲线显示各数据,放大缩小图形坐标。