springboot 物联网_物联网远程实验平台LinkLab V2.0发布
简介
LinkLab是阿里巴巴-浙江大学前沿技术联合研究中心(AZFT)物联网实验室推出的物联网远程实验平台。LinkLab提供远程开发、在线判题、场景仿真等功能,可以应用在物联网实验教学、科学研究、应用测试等多个场景。自LinkLab V1.0上线以来,平台已经开设31门课程,设置140个实验,与7所高校合作,累计为1200余人提供服务,总实验时间近15000小时。
针对平台使用过程中发现的问题,结合用户反馈,我们在1.0版本基础上,进行了功能更新与优化,其中包括新增课程与实验建设功能、本地烧写功能,扩展WebIDE远程调试功能,优化日志系统,改进云编译系统以及丰富在线实验内容等九大主要更新,形成了物联网远程实验平台LinkLab V2.0。
一:支持教师用户进行课程建设
新版本的LinkLab支持教师用户进行课程建设,包括编辑课程章节,上传课程资料,配置测试题内容与时间等。操作步骤如下:
教师用户在“我的课程”界面点击“自主开课”来创建属于自己的课程,通过填写相应的课程信息来完成课程的创建,创建成功后在“我的课程”中查看新创建的课程,对课程内容资料试题进行上传配置。
在课程管理界面,点击添加章节按钮为课程添加章节,创建好章节后可为课程章节添加参考资料(包括word/ppt/pdf格式)、视频资料(mp4)、作业(word)、LinkLab实验以及测试题。
图1:配置章节资料。
为了方便课程共享与资源快速导入,在“课程导入”中选择一门课程即可把该课程所有章节即资源拷贝到当前课程上。
在创建课程并开课后,教师用户可以通过“课程成员”查看并管理本门课程的所有成员。在“课程成员”界面,点击“查看学生实验情况”可以查看该学生实验得分详情。
图2:查看学生实验得分。
在课程管理界面,点击“课程作业”,可以查看自己布置的作业情况,同时还能在线浏览和批改学生提交的作业,支持成绩导出的功能
图3:查看课程作业。
二:支持教师用户创建LinkLab实验
2.0版本新增支持教师用户创建LinkLab实验功能,在自定义实验菜单入口填写json配置文件、上传代码模板文件,创建自定义实验。
图4:创建实验。
实验创建完成后可以进行具体内容配置,包括上传实验手册与实验报告,配置实验题内容与页面布局等。
图5:实验内容配置。
三:支持本地烧写
2.0版本新增本地烧写功能,用户可通过LinkLab编写代码,经过云编译后烧写至用户本地连接的IoT设备,并获取程序运行结果。
用户在WebIDE中编写好自己的代码之后,可以在本地烧写控制窗口中选择设备类型和串口,点击烧写按钮即可完成代码的编译和上传,之后可以设置波特率并打开设备串口查看串口输出信息。
图6:本地烧写。
四:WebIDE远程调试
针对1.0版本里WebIDE不能通过调试发现代码bug的问题,本次更新扩展了WebIDE远程调试功能,支持单步远程IoT代码调试。新增Developkit 的单步、断点、变量显示功能。通过单步功能逐句控制程序的运行并通过变量显示功能打印出程序当前变量信息,通过断点功能在程序的对应行设置断点,当程序执行到该位置时暂停程序的执行,方便调试。
图7:WebIDE远程调试。
五:编译系统改进
LinkLab V2.0对云编译系统微服务化进行了改进,提升了系统弹性与效率。LinkLab云编译系统现阶段支持Arduino、AliOS-Things、STM32、Mbed-OS和树莓派等物联网应用的在线编译。云编译系统将每种物联网应用的编译环境封装成容器,会根据用户的编译请求弹性扩缩容容器副本的数量,保证编译任务的执行效率和系统的资源利用率。
图8:500个编译任务在不同容器数量情况下执行时间。
六:新增在线实验内容
在线实验内容方面,2.0版本最大亮点是增加了工业互联网场景式实验,代表课程为淘工厂线上课程。淘工厂线上课程基于淘工厂案例,将案例内的工厂实际生产设备全部虚拟化,打造了全新的工业互联网虚拟场景。淘工厂虚拟场景与智能家居虚拟场景同样基于Unity3D引擎开发,还原了工厂内流水线的布局与功能,省去了部署与调试硬件的步骤。
图9:淘工厂课程虚拟场景界面。
淘工厂线上课程分为服务端、云端和边缘端三端进行开发。其中云端依托阿里云物联网平台、阿里云对象存储服务OSS等云计算服务,连通三端实现数据流转;服务端采用Spring Boot与钉钉小程序结合,完成订单在客户和工厂两端的可视化;边缘端由于不需要实际硬件支持,着眼于机器视觉算法的开发,采用时下主流的PyTorch框架和物体识别视觉算法将生产流程完全数字化。边缘端视觉算法开发结合WebIDE,在线编程,支持算法在线测试,无需再配置机器学习环境和准备训练数据集。
图10:淘工厂课程开发界面。
七:新增LinkLab设备机柜
为支持更多物联网硬件,便于管理,本次更新定制了LinkLab设备机柜,里面包含的开发板有Arduino Mega、DevelopKit、ESP32-DevKitC和Arduino Uno、Raspberry,由上至下依次布局,为远程物联网实验硬件标准化布置提供范本。
图11:LinkLab设备定制机柜。
八:Web端可视化节点烧写功能
新增Web端可视化节点烧写功能,首先选择设备节点,支持多节点选择,然后上传烧写文件,之后配置每个节点需要烧写的文件完成烧写。
图12:Web端节点烧写。
九:LinkLab日志系统优化
LinkLab日志系统进一步优化,新增平台资源情况、异常报警、用户细粒度数据看板,方便运维人员及时发现并处理平台异常,为LinkLab平台稳定性保驾护航。
图13:主机监控。
图14:自动化测试报表
总结
LinkLab V2.0通过功能更新与优化,更加贴近教师与学生需求,在用户体验与稳定性上更上一层。通过本次2.0版本发布,LinkLab物联网远程实验平台将更好服务在线物联网实验教学与科学研究,推动物联网在线教育生态共享共建,适应高校物联网教育事业的进一步发展。