5月19日,华为在成都发布两款首次应用鸿蒙操作系统的个人电脑:HUAWEI MateBook Pro与HUAWEI MateBook Fold 非凡大师。这两款鸿蒙电脑的发布标志着我国拥有了从内核层开始自主可控的电脑操作系统,也意味着国产操作系统在PC领域实现重要突破。
目前鸿蒙系统的生态处于起步阶段,有300+融合生态已完成适配,可以满足日常轻办公应用场景,但在专业级软件和外设适配等方面仍不能令人满意,截止至截稿时间,市面上99%的PLC都无法支持鸿蒙电脑,要么受限于IDE软件无法运行,要么硬件驱动尚未开发,不过对于AIOSYS来说都不是问题,原因在于AIOSYS的IDE环境是基于Browser/Server架构,用户无需安装任何客户端程序即可直接使用。这种设计既解决了传统集成开发环境因体积庞大、配置复杂、跨平台兼容性差等问题,同时,用户编辑的工程文件也会随时同步到云端服务器,防止在开发过程中遇到一些意外状况(如PC突然断电)发生时,丢失尚未保存的工程文件。
成都数自创新在第一时间预购了MateBook Pro,收到电脑后马不停蹄开始了AIOSYS的验证测试工作。今天就来和大家一起分享一下作为国内首家100%自主研发并投入商用的工业软件平台,在国内首个从硬件到软件全栈自主研发的操作系统上的表现。
本次测试所使用的器材:
网络拓扑:
目标:通过笔记本浏览器访问AIOSYS在线IDE平台,控制PLC在IO模块上实现一个流水灯显示效果。
零点自动化(ODOT)公司的DU03L是国内首款基于IEC 61499标准的AIOSYS控制平台的PLC;DT-222F数字量输出模块采用了两段式冗余背板,可拆卸端子和模块上均配备了指示灯,调试监控更加直观。
MateBook Pro搭载华为鸿蒙NEXT系统,整个主界面相当简洁,底部是现在电脑和平板都很常见的 Dock 栏,屏幕支持触摸交互,使用起来基本没什么门槛。
进入鸿蒙系统打开海泰浏览器,访问AIOSYS的在线云平台登录页面。平台支持多用户管理功能,可以独立保存每个用户的工程文件,也可以通过导入/导出功能进行资源的共享利用。
继续点击IEC61499模块即可进入在线IDE编程环境,新建一个项目,命名“鸿蒙初体验”。
进入IDE的编程界面,视图采用大家都普遍较为熟悉的布局,左侧为工程树,可以对工程中的分类子项目进行管理,正中间是编辑区域,下方为属性和日志的显示区域,右侧为工具箱,AIOSYS原生集成了部分IEC61131-3的功能块。
首先需要添加主控制器到工程中,右键工程树中的“系统配置”,选择“添加设备”,选择“DU03L”,添加的控制器会被随机分配一个颜色,后续被部署到该控制器的功能块都会是相同的颜色。
点击刚刚添加的DU03L控制器,在编辑区将运行时地址更改为控制器实际的地址,端口号为:61500。
使用网线连接DU03L和MateBook Pro,确保两者在相同的网段下,测试一下IDE和控制器的通讯。
在工程树左侧右键DU03L控制器,选择“登录设备”,登录成功后,控制器名称右侧的小圆点会由红色变为绿色,就代表IDE已经成功连接上了控制器,下一步我们就可以通过“配置扫描”功能,把实际的IO模块组态信息快速的读取到工程中。
在DU03L控制器名称上右键选择“添加协议”,在弹出的窗口中选择“背板通讯odot”,确定后在DU03L树下会出现一个“I/O设备”的子项,在“I/O设备”上右键选择“扫描配置”,等待IDE读取设备组态成功后会在下方显示实际的组态信息。
系统组态部分完成,接着我们要新建一个简单功能块,点击新建的功能块进入编辑,切换到“属性”标签页的“变量”选项卡下,在输出侧新建2个变量“DO1”、“DO2”。
将“DO2”更名为“CNT”,数据类型为INT;“DO1”更名为“VAL”,数据类型为长度62的BYTE数组,初始值留空即可。
接着切换到“算法”标签页,算法语言目前支持LD、ST、C,用户还可以通过服务接口功能块,使用自己惯用的编程语言(如C++/C#/Python/Java等)将算法封装起来,导入IDE即可进行调用。
编译通过后,在“应用”视图中把刚编译完成的FB拖拽到编辑区,继续从“系统功能块”库中拖拽“E_CYCLE”和“BUS_IOBUS”功能块,“E_CYCLE”功能块主要作用是产生周期性循环事件,而“BUS_IOBUS”功能块则负责更新总线IO数据,将他们进行如下连线:
把程序(应用)分配给需要执行控制的控制器(资源)。分配完成后,功能块的颜色会由白色变成与控制器相同的颜色,代表这些功能块已经成功映射到目标控制器,这个特性使得编程人员在众多功能块中一眼就能分辨出哪些功能块被映射到了什么控制器,管理起来更加便捷、直观。
分配结束后切换到“资源”视图,“应用”中的功能块已经被成功映射到控制器资源中了,在这里我们需要将编辑区的右上角的“变量赋值模式”改为“默认值”,修改“APP.E_CYCLE.DT”的值为T#100ms(每间隔0.1秒就触发1次刷新),继续将“变量赋值模式”改为“全局变量/IEC地址”,修改“APP.LED_CYCLE.VAL”的值为%QB0(QB0为IO模块的自动分配的起始地址)。
将控制器的冷启动事件连接到“APP.E_CYCLE.START”管脚。最后一步,确保控制器为连接状态,完成对资源的部署运行。
框选所有功能块,右键选择“监视”,一次点亮,大功告成:
AIOSYS凭借其纯Web架构的先天优势,在兼容鸿蒙系统的过程中展现了卓越的竞争力。相比传统IDE软件,AIOSYS真正实现了"零安装、即开即用"的极致体验,用户可以选择通过任意浏览器访问,也可以选择将云端服务器进行私有化本地部署,进一步确保用户数据安全。依托鸿蒙系统低功耗、高流畅度的卓越性能,AIOSYS为用户带来了革命性的组态编程体验。其云端编程方式不仅打破了传统客户端的局限,更赋予自动化工程师前所未有的灵活选择。
虽然目前AIOSYS的Runtime还无法在鸿蒙系统上直接运行,不过相关的适配工作正在紧锣密鼓的开展,相信很快就能实现。作为工业4.0时代的重要推手,AIOSYS正以其前瞻性的技术架构和卓越的用户体验,为智能制造的发展注入全新动力。