没有合适的资源?快使用搜索试试~ 我知道了~
2013年8月28日至30日,国际自动控制联合会第10届IFAC研讨会控制教育进展。英国谢菲尔德网络实验室:从远程到移动Alessandro Vittorio Papadopoulos,AlbertoLeva米兰理工大学Dipartimento di Elettronica,Informazione e BioingegneriaPiazza Leonardo Da Vinci,32 - 20133 Milano,Italy(电子邮件:papadopoulos@elet.polimi.it,alberto.polimi.it)翻译后摘要:现代技术允许创建一个网络控制系统与现成的移动设备。因此,有可能由相同的人扮演谁提供和谁使用“远程”实验室的角色。扩展最近发表的想法,本文提出了第一个核心的功能,允许一个创建过程模拟器和控制器上运行的移动应用程序,然后与他人分享。此外,本书还探讨了一些可能性,并勾勒出一些有趣的教学活动,以供学生参考。关键词:远程实验室;移动应用。1. 导言和动机用于控制教育的远程实验室在过去几年中受到了很多关注,基本上是一种可行且有效的手段,可以让学生与物理实验进行交互,而不管他们在哪里,可以在教学和研究机构之间共享例如Dormido et al.(2008)和Gomes andGarc 'ıa-Zub' ıa(2007)提出作为这种主导观点的结果,在文献中可以观察到一个相应的主导思想这种想法存在许多变体,包括例如保留机制,将控制从客户端移交给另一个客户端的可能性,由一些“指导”客户端进行监督尽管如此,实验室在一边,用户(学生和教师)在另一边。当然,这种情况有许多好的动机,作者认为其中两个是一个问题在于远程实验室服务器的硬件/软件架构的典型复杂和昂贵的性质。这是特别真实的,如果涉及物理实验,如各种各样的例子,如证明。(2005),并且在模拟实验的 情 况 下 仅 部 分 减 轻 , 参 见 , 例 如 , Sanchez 等 人(2002),从更抽象和另一个动机,在某种意义上与前一个动机有关,是服务器端和客户端应用程序的复杂性,其开发需要加入和协调控制和软件工程专业知识。这可以通过使用一些解决“远程用户接口”问题的技术来缓解无论如何,这个问题并没有完全消除,特别是如果一个人希望客户端能够改变控制律,而不仅仅是它的参数-参见Casini et al.(2005); Pastoret al.(2005)的然而,全景正在改变,至少是潜在的,因为现在有可能创建一个网络控制系统-事实上,移动应用程序可以被开发并用于实现因此,在这一理念的基础上,就有可能由同一批人来扮演谁提供和谁使用“远程”实验室的角色这项工作从最近发表的一些想法出发,主要以立场文件的形式提出可能性范围从使用移动应用程序,使学生更好地理解基本控制课程的概念,到更高级的活动,学生可以以经济实惠的方式创建和测试自己的控制器或过程模拟器,并在一个独立而逼真的模拟环境中。本文为所提出的想法提供了一个简单的概念证明,并就如何使用它来设计和提供不同层次的教学活动一般的观点,在戈麦斯报告的讨论,Bogosyan(2009年)。1 LabVIEW是National Instruments Corp.的商标,德克萨斯州休斯顿© IFAC 84 10.3182/20130828-3-UK-2039.00051第十届IFAC ACE2013年8月28日至30日。英国谢菲85客户端- socket:Socket+ request()+ response()服务器- ssocket:ServerSocket- 插座:插座- 运行:布尔- 请求:矢量+ Process()加...11过程该文件的组织如下:第2节报告的综合概述设想的第4节介绍了学生可以开展的活动的基本类型,第5节说明了设想的发展,最后第6节得出了一些结论,并勾勒出未来的工作。2. 架构 概述第1节中报告的介绍性考虑可以将需求总结如下。首先,只需要使用现成的元素,这既适用于硬件设备,也适用于软件开发环境;只要可能,出于明显的原因,就应该选择免费工具。其次,该架构必须允许移动节点与其他移动节点和/或中央服务器(通常不是移动类型的,因为这种情况最有可能发生在物理实验中)交互。第三,虽然所提出的活动是在控制教育领域事实上,向学生提出的更有趣(但更高级)的活动之一是修改现有的模拟器,或者从头开始创建自己的控制器/进程,并将其插入应用程序,并与应用程序的其余部分进行少量(如果有的话)集成。因此,必须注意使不可避免的困难由“平均”控制学生管理通过尽可能多地最小化和隔离与控制和仿真主题相关的代码片段,可与(或多或少)所有以控制为中心的课程中教授的典型软件工程技能兼容并可解决。经过一些考虑,我们选择将架构的所有部分接地,从而在Android操作系统上生成移动软件其主要原因是Android在移动(特别是智能手机)市场的广泛和不断增长的扩散;图1的预测数据证明了这一点,显示了Gartner,Inc. (2011年)。Fig. 1.智能手机操作系统的市场份额,2015年预测。第二个,某种程度上是一个结果,是Android开发工具的预期标准化,以及创建比迄今为止可用的更用户友好的工具最后,Android SDK(软件开发工具包)基于Java,具有面向对象的范例,允许根据需要隔离与控制相关的代码片段。然而,尽管有明显的优势,Android(但从这个角度来看,几乎所有针对移动设备的操作系统)也有一些缺陷。这样的系统实际上被赋予了相当复杂的应用接口,这主要是由于在运行交互式应用的同时必须保持对异步事件(如电话呼叫或消息传递活动)的迅速响应。作者并不认为这种困难足以放弃智能手机作为选举设备,因为它是昂贵的回报,连接方便,但软件开发问题仍然存在。当然,当涉及到非移动节点时,操作系统和开发问题或多或少就消失了。然而,考虑到在不同的控制领域中对智能手机到基站通信功能的需求也在不断增长,可以假设采用Android也将从这个角度证明是有益的。在开发工具方面,决定采用标准的Android SDK框架,这意味着使用Java编程语言开发所有内容。然而,目前,主要的IDE(集成开发环境)工具提供了相当高级别的调试和设备仿真功能,但是出于上述相同的原因,其目标更多地是基于典型的“标准”移动应用的基于事件的编程,顺便说一句,Android在计算机教育的背景下也被广泛使用,包括教学操作系统(Andrus和Nieh,2012),这意味着有很多教学和支持材料可用,将来会有更多。在任何情况下,在第3节中描述的应用程序结构中,作为提案的组成部分,已经注意将模拟和控制相关代码与应用程序的其余部分适当隔离,以便让控制学生面对具有挑战性但可行的目标,如上所述。3. 应用结构在本节中,我们将描述拟议的移动应用程序是如何构建的,并强调可能的教学活动的相关部分。应用程序可以构造为经典的客户端-服务器架构。过程模拟在服务器端进行管理,接收客户端(调节器)的控制输入图二.客户端-服务器架构。0..*1. *11调节器第十届IFAC ACE2013年8月28日至30日。英国谢菲86不SOPFOPDTFOP+getOuput(doubleu):double+ setTs(double Ts):void- 双y- 双T过程使用这种架构的优点是双重的。首先,过程可以具有由服务器以集中方式模拟的多个输出,并且多个控制回路可以由不同的控制器(客户端)独立地并且以分布式方式设置和管理其次,如此设计的架构允许客户端连接到通用服务器并以完全透明的方式接收无论服务器端是什么。事实上,与客户端通信的参与者可以是另一个移动终端,也可以是模拟物理系统行为的Web服务器,甚至可以是连接到真实工厂并对其进行操作的服务器(参见图3)。客户端服务器图三.客户端-服务器交互。这是拟议的“移动实验室”的第一个特点只是为了给出一个想法,考虑到Gomes和Bogosyan(2009)提出的实验分类,采用这个框架可以覆盖4个可能的实验中的3个:-“远程模拟”,当移动终端连接到在其上模拟设备行为的远程服务器时;the “remote experiment”, when a mobile device connectsto a remote server which acts on a real唯一被排除在外的是谈到一些实现细节,应用程序可以充分利用面向对象方法的优势,因为基本上有两个实体在起作用:流程和控制器。这两个实体都是例如,调节器可以是PI或PID(见图4 ) , 过 程 可 以 是 一 阶 过 程 ( FOP ) 、 一 阶 加 死 区(FOPDT)或二阶过程(SOP)等(见图5)。然而,这仅仅是一个示例,并且可以实现不同类型的控制器和过程。特别是,该过程不限于传递函数,它可以是具有指定输入和输出的物理模型,将仿真细节封装在类方法中。如果以固定步长模拟模型的简化被接受-显然,到目前为止,粗略的框架只提供了第一个核心功能,但可以很容易地扩展更多功能见图4。调节器类图。图五.流程类图。类,包括更先进的控制技术和更复杂的模型。3.1 一些用例在应用程序的开发中,考虑了一些简单但重要的用例,并在这里简要介绍。第一个用例是将移动应用程序用作远程调节器,并控制不同移动终端上的过程(模拟)。典型的场景如下:用户可以在不同的控制器结构中进行选择PI或PID,以及通过IP选择连接哪个服务器。用户界面(图6)允许用户选择设定点和调节器参数值,并通过“启动控制”按钮建立连接用户可以通过一些进度条看到控制变量和测量的输出值。用户可以在线修改参数值,查看对控制变量和测量输出的影响。从控制器的角度来看,其他信息是不相关的,因此不显示给用户。不+setTs(doubleTs):void+setSP(doublesp):void+setPV(doublepv):void+setAuto():void+setManual():void+computeCS():double+updateParameters():void- 双W- 双u- 双y- 双uMin- 双uMax- 双T- 布尔手册调节器PiPID- 双K-双K- 双钛-双钛- 双uOld 1-双Td- 双N- 双uOld1- 双uOld2+setParameters():void- 双mu- 双T1- 双T2- 双蛋黄1- 双蛋黄2+setParameters():void- 双mu- 双T- 双D- 双蛋黄1·+setParameters():void- 双mu- 双T- 双蛋黄1·······第十届IFAC ACE2013年8月28日至30日。英国谢菲87{{{{∗}个字符。}见图6。PI控制器的用户界面。另一个用例是用户选择该过程而不是移动终端上的调节器部分(图7)。用户可以在不同的过程结构中进行选择,例如,FOP、FOPDT、SOP等等,这取决于应用程序中实现的类。用户按下“开始模拟”按钮,使应用程序开始等待客户端请求(即,调节器请求输出值),并因此请求控制输入。当建立过程和调节器之间的连接时,闭环模拟开始。用户可以更改模型参数,并将过程重新初始化为初始条件。用户可以随时按下“停止模拟”按钮停止模拟在这两种情况下,学生可以更深入地了解参数如何影响闭环行为及其动态性能。见图7。移动应用程序的屏幕截图。利用此特性的第一个值得注意的示例是让学生了解如何编写负责管理控制循环信号的代码(请参见清单1)。清单1.管理模拟。t h r e a d =new Thread(newRunnable()p u b l i c v o i drun()d o u b l eu;//C o n t r o l v a r i a b l ed o ub l e y;/ /输出v a r i a b l eT R Ywh i l e(t r u e)/打开/关闭 读 T H E 因普乌特u =(d o u b l e)u In.int n = int n();/打开/关闭更新我的天y = pr oc.int t(t);/打开/关闭更新图形用户界面程序栏。s et P r o g r es s((i n t)y); prog Bar.2019 - 05 - 22 00:00:00(双to S t r i n g(y)3.2 隔离模拟和控制代码如 前 所 述 , 应 用 程 序 是 用 Java 编 写 的 , 使 用 AndroidSDK,因此它被划分为公开公共方法的类(例如,再次参见图5),可以在不改变项目其余部分的情况下进行修改从教学的角度来看,这是一个基本的方面,因为学生可以修改应用程序的非常孤立的部分-与控件相关的部分-而无需考虑Android框架的})};)的情况下;//等待一个新的线程。s l e e p((一)(正)g e t T s()1000))的情况下;c a t c h(I n t e r u p t e d E x c p t i o nex)r e t u r n;}·····第十届IFAC ACE2013年8月28日至30日。英国谢菲88第十届IFAC ACE2013年8月28日至30日。英国谢菲89-你好这是一个关键的技能,因为错误的实现可能会导致系统的不稳定行为,即使控制设计正确。另一方面,另一个重要方面值得证明。事实上,在基础控制课程中,学生们使用连续时间系统,但几乎不知道如何模拟这些系统清单2显示了连续时间一阶过程的显式欧拉离散化的一个非常简单的清单2. First Order Process类。p u b l i c c c l a sFOPe x t e n d s P r o c es s//par a m e t e r s预注册的单位;预注册的单位T;预注册的单位Ts;//V a r i a b l e spr i v a t e d o u b l e你要做的是:联系我们. . .∗其他a u x i l i a r y测量方法∗. . ./pu b l i c d o u b l e g e t O ut p ut(d o u b l eu)d o u b l e p = t h i s. Ts/t h i s。T;这是一个很好的例子。y =(1 (p) 这是一个很好的例子。哟 + 这是一个很好的例子。穆普u ;t h i s.哟 = 这是一个很好的例子。y;/ /保存该属性r e t u r ny ;}}getOutput方法可以很容易地用不同的离散化规则进行修改,并使学生更好地理解这种选择改变采样时间Ts的效果。在这两种情况下,这个框架提供了一个4. 拟议的无效活动学生可以利用所提出的移动实验室架构进行的活动可以大致分为三类。第一个也是最简单的类别包括使用一些已经开发的实验。事实上,这种活动与文献中已经提出和说明的许多其他活动非常相似,但有两个不同之处。首先,智能手机的使用增强了实验室工作的灵活性.其次,也是最重要的,一组学生可以得到一个完整的实验室,包括实验服务器端(一般是模拟的)和客户端。这允许例如,在各种条件下进行实验,体验连接和其他环境问题,第二个更复杂的类别包括建筑 一个实验室,通过采取的模块已经存在于图书馆和组成他们到新的结构。这使学生直接接触软件(可能还有硬件)体系结构,以便在未来的控制专家中引入如何在移动环境中实现解决方案的知识-当他们有时间与计算机专业人员互动时,这是一项潜在的宝贵技能。此外,这种类型的活动允许构建和实验铰接系统,可能有多个控制器节点作用于具有多个回路的一个工厂节点。此活动适用于更高级的(例如,研究生)课程,并且需要更严格的指导(例如,首先提供一些例子,然后定期与学生互动)。第三类也是最高级的一类,包括实际参与软件体系结构的开发和丰富。例如,这可以通过编写新的模块来实现,始终注意简化将这些模块组合到新应用程序中的人员对所述模块的使用。这样做本质上会导致学习如何适当地强制封装开发人员看到的Android特定(或更一般地说,特定于架构)事实。这样的活动最有可能以论文的形式进行5. 未来发展目前,开发的软件只是一个核心,因为选择集中在其体系结构的设计,其中一个例子已在第2和第3节解释第一个实现是在GNU通用公共许可证第3版(GPL v3)2的条款下作为自由软件发布的,以便在库实现的最初阶段与社区分享经验和想法尽管如此,近期的发展已经安排好,可以总结如下。已经设想了第一这些当然包括模拟简单过程的传递函数,但也包括以尽可能“工业”的姿态实现的控制器,即,利用所追求的控制代码隔离-此外,基于第一原理的简单过程的模拟器这将丰富学生在一个紧密相关的方面,一组用户界面模块是为了让应用程序的开发者为了容易地实现具有面向控制的外观和感觉的这种界面(即,包括图表、趋势等)。这对于进一步帮助隔离控制代码和简化新应用程序的开发非常重要,因为Android具有许多有用的功能传统的实验室设备对证据不那么敏感这活动也可以在相当基础的课程中进行,并具有高度的学生自主性。2 它可以被下载从home.deib.polimi.it/leva/MobileLabs.html{{第十届IFAC ACE2013年8月28日至30日。英国谢菲90和增加扩散然后,正在探索是否有可能拥有物理实验服务器,无论是基于PC还是由非常小的独立设备组成我们的目标是让学生团体运行一个完整的远程实验室,包括服务器,实际体验遇到的困难。这里也将利用过去收集的经验,并在几篇引用的论文中进行描述,同时探索当今功能强大且价格低廉的开发板(例如Arduino或Raspberry Pi)所提供的可能性使用这样的板当然会使设计复杂化(然而,目前的活动不期望被包括在本文所呈现的教学活动中),这是由于必须让它们在一侧处理物理设备并且在另一侧与Android节点交互。尽管如此,这种设备的开发容易性和连接可能性应该使这个想法可行,并且实现起来相当简单。此外,还计划研究现有的基于Android的架构与其他网络实验室框架的可能集成。在这方面,Easy Java Simulation(S a'nchez等人,2005)是一个自然的候选者- 在服务器端,非常直观-因为它是基于Java的,但是通过设计和实现方便的包装器来将架构的Java代码与异构模块连接,人们可能会最后,正在编写文件和教学材料不用也就是说,作者希望一旦这个工具发布,社区将通过提供合作,想法和批评来帮助改善整体环境,使其使用最有成效。6. 结论在一些先前提出的想法和结果的基础上,提出了基于Android的架构的第一个核心,该架构允许在移动设备上创建过程模拟器和控制器,然后与其他人共享以组成一个完整的移动在激发了研究之后,以相当高的水平描述了该体系结构,并概述了如何使用它来设计应用程序的示例。然后设计了一些可能的活动,说明它们如何能够在一个统一的教学路径内针对不同能力水平的学生,并追求适合所有提到的水平的目标。该建议显然只是一个长期工作的开始,这也是简要说明。作者希望报告的想法和考虑将刺激社区合作,他们认为这是一个非常有前途的主题,在控制教育。引用Andrus,J. and Nieh,J.(2012).使用Android操作系统教学。 在第43届ACM技术会议上,计算机科学教育研讨会,613-618。ACM,Raleigh,NC,USA.Casini , M. ,Leva , A., 和 Schiavo , F. ( 2005 年 ) 。AIRES:基于Web的远程实验标准。第16届IFAC世界大会布拉格,捷克共和国。Djalic,V.,Maric,P.,Kosic,D.,Samuelsen,D.,Thyberg,B.,和Graven,O.(2012年)。机器人和自动化远程实验室作为远程访问学习内容的工具。在互动协作学习(ICL),2012年第15届国际会议上,1-3。IEEE,Villach,Austria.Dormido , S. , Va rg as , H. , 桑 切 斯 , 多 尔 米 多 河Duro ,N.,Dormido-Canto,S.,和Morilla,F.(2008年)。开发和实施控制教育的虚拟和远程实验室:uned试点经验。第17届IFAC世界大会,8159-8164。韩国首尔Gartner公司(2011年)。Gartner称android将在2012年底前占据全球智能手机操作系统市场的近一半份额。网址http://www.gartner.com/newsroom/id/1622614.戈梅斯湖和Bogosyan,S.(2009年)。 远程教育的当前趋势laboratories. 工业电子学,IEEE学报,56(12),4744-4756。doi:10.1109/TIE.2009.2033293。戈梅斯湖Garc 'ıa-Zub' ıa,J.(2007). 远程实验室与数位学习经验之研究进展。Deusto大学。古 兹 曼 , J.L. , Berende , M. , Rod r'ıguez , F. , 和Dormido,S. (2005年)。基于网络的远程控制实验室使 用 温 室 规 模 的 模 型 。 Computer Applications inEngineering Education , 13 ( 2 ) , 111-124. doi :10.1002/cae.20035。Leva,A.和Donida,F.(2008年a)。多功能远程自动控制教学实验室:crautolab的经验。工业电子学,IEEE学报,55(6),2376Leva,A.和Donida,F.(2008年b)。pid自整定远程实验室。第17届国际会计师联合会世界大会,第17卷,8147韩国首尔Maggio,M.和Leva,A.(2011年)。学习编写控制代码。第18届国际会计师联合会世界大会,7292-7297。意大利米兰。doi:10.3182/20110828-6-IT-1002.01026。Murtra,M.,Jansa ,G.,Martinez ,H.,Domingo ,J., Ga'miz,J.,和Grau,A.(2007年)。 机器人应用远程培训远程实验室的建议。新兴技术和工厂自动化,2007年。ETFA。IEEE会议,1180-1187。IEEE,希腊帕特雷。最后,R. Mar t'ın,C., 桑切斯, 和Dormido,S. (2005年)。以xml为基础之伺服马达远程控制实验室之发展。国际电气工程教育杂志,42(2),173桑 切 斯 , Esquembre, F. , Mar t'ın, C. , Dormido, S. ,Dormido-Canto,S.,坎托河,帕斯特河,和Urquia,A.(2005年)。简易java模拟:一个使用matlab/simulink开发交互式虚拟实验室的开源工具。国际工程教育杂志,21(5),798。Sanchez,J.,Morilla,F.,Dormido,S.,Aranda,J.,还有鲁伊佩雷斯P.(2002)。使用java的虚拟和远程控制实验室:定性方 法 。 控 制 系 统 , IEEE , 22 ( 2 ) , 8-20 。 doi :10.1109/37.993309。Vicente , A.G. , Munoz , I. B. , Galilea , J.L.L. , 和 德尔·托罗,P.A.R.(2010年)。使用虚拟机集群的远程自动化实验室。工业电子学,IEEE学报,57(10),第十届IFAC ACE2013年8月28日至30日。英国谢菲913276
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功