tag 标签: 过程控制

相关博文
  • 热度 5
    2022-4-27 14:03
    1269 次阅读|
    0 个评论
    本系列文章旨在帮助读者 对虹科 KPA Automation体系进行一个简要的理解,并且能使用 MoDK 进行快速的上手操作 , 包括: 虹科 K PA A utomation、 虹科 K PA M oDK 简介, 虹科 K PA MoDK 的运行环境搭建与例程测试。本文档搭建 的 虹科 K PA M oDK 运行环境,是基于Win10,并且是以C /C++ 为开发语言进行的。 虹科 KPA A utomation是一个自动化解决方案开发平台,适用于工厂自动化和过程控制应用。 经过前文的相关介绍和运行环境的搭建, 本部分进行部分官方例程的测试,以下例程分别对应了 MoDK 可以控制的 3 类对象: Ether CAT 从站(结合 M DK )、 Vrep 机器人仿真平台、 Simulation (纯文字仿真)。最后一个例程通过 Motion Configuration Utility 中的设置,实现了对实际电机以及 Vrep 中仿真机器人的同时控制。 一、 M ove _ relative ( E therCAT & C iA 402) 该例程的测试效果是控制一个物理电机轴进行 3 次相关运动,需要我们外接一个 Ether CAT 从站伺服和电机进行现象观察,笔者的测试环境中,选择的是 maxsine 的伺服。 例程测试的步骤如下: ①在 虹科 KPA Studio 中进行网络组态 1 、打开 虹科 KPA Studio ,进入主界面后,进行 maxsine 伺服 ESI 文件的导入 使用 3.2.2 节提到的操作方法,导入 maxsine 伺服的 E SI 文件,如下图所示: 2 、开启本地的 虹科 KPA Master ,并在 Studio 中进行连接 虹科 KPA MRT 安装完毕后,在桌面可以找到 Master 启动快捷方式,可用作本地 E therCAT Master 与 Studio 进行连接。 开启后,可以在桌面右下角任务栏里看到 Master 的小图标,意味着 Master 已经打开。 3 、进行网络组态,并尝试 Master 和从站伺服的 O P 回到 E therCAT Studio ,点击界面中间“ Connection settings for Master server ”下“ H ost name ”或“ P ort number ”的可编辑区域,鼠标双击或点击回车键。若弹出了“ Trying to connect ”窗口后没有其他消息,并且可以从“ N etwork card ”下拉列表中看到并选取本地主机所拥有的网卡,则代表 Studio 连接本地 Master 已经成功。 将 maxsine 伺服拖动至 Master 的位置,即实现了从站的挂载,也完成了网络组态。并在“ Network card ”选项中,选择将作为 Ether CAT 主站控制伺服电机的网卡。 或者您也可以选择好网卡后,使用网络扫描功能扫描整个网络的组态: 接下来进行 O P 测试。将物理接线连接好以后,依次点击 Studio 上方工具栏的“ attach ”按钮, Master 的“ state ”选项卡,“ Operational ”按钮,进行主站的 O P 测试。 正常情况下,可以看到主站和伺服的状态机均切换成了 O P 状态,代表本地 Master 运行没有问题: ②在 Motion Configuration Utility 中将轴与伺服电机进行对接,并导出配置文件 接下来进行轴的配置,并导出网络组态与轴配置文件,首先在 Studio 中打开插件“ Motion Configuration Utility ”。 接下来如下操作,进行电机轴与伺服的绑定: 为了使现象更加明显,我们可以将参数页面下的位置、速度的标称值改大一点: Motion Configuration Utility 提供相当丰富的参数设置,此文档下的初步测试就不作进一步的展开了。请您关注我们后续发布的文档。 接下来进行文件的导出,如下操作: 选择导出路径,点击 O K 按钮后,即可在相应文件夹下面观察到导出的网络组态文件和轴配置文件: 将这两个文件拷贝至工程文件夹下面即可。 ④修改程序源代码的部分参数。 例程通过读取网络配置文件和轴配置文件进行 MoDK 运行环境的初始化,其读取的文件名是通过宏进行设定的,要么我们进行文件名的修改去适应宏,或者是修改宏来适应文件名,或是修改代码中文件读取 A PI 的文件名参数。由于 Motion Configuration Utility 的文件导出功能并不支持导出文件名的修改,而修改源码又略显麻烦,因此笔者推荐修改宏来适应文件名的方法。 如下图所示,在 move _ relative . c 中进行文件名宏的重定义,以适配导出的文件名: 另外,我们还需要修改 ecatm 虹科 KPA 15_helper.c 中的选用网卡编号,使得本地 Master 能够通过正确的网卡进行从站伺服的控制。首先先按下“ ctrl +F5 ”,运行一遍程序观察情况: 可以观察到由于没有选择正确的网卡,本地 Master 停留在了初始化阶段。上文中,笔者在 Studio 中设置的网卡为 U SB2.0 to F ast E thernet A dapter ,在控制台界面中也可以看到其编号为 2 。由此我们需要在 ecatm 虹科 KPA 15_helper.c 更改所用的网卡编号: 至此所有配置都已完成。 ⑤观察控制现象。 点击“ ctrl+F5 ”,即可运行程序观察现象,可观察到电机被控制而运转起来: 二、 M ove _path ( Vrep ) 这个例程不仅体现了 虹科 KPA M oDK 的另一种被控对象( Vrep ),并且也体现了另一种轴实例的初始化方式——源代码配置,即通过直接在程序中添加源码以到达修改轴配置参数的目的。相比上一个例程中的“界面配置 + 源码导入”的环境初始化方式,这种配置方式无疑会更加繁琐,而且会增加源代码的代码量。但是在此部分代码完成后,再次修改轴配置参数的步骤就十分简单了,直接在代码中修改相应参数即可,而另一种环境初始化方式则仍需要重新配置生成 ini 文件,各有千秋。 源代码配置轴初始化参数的方式更适合需要频繁变更初始化环境的情况。 例程测试的步骤如下: ①在 V REP 中打开官方提供的三轴线性机器人模型 M oDK 提供了一个 V rep 三轴线性机器人模型,在开发包的 samples 文件夹下,安装 V rep 后,双击即可在 V rep 中打开模型 : ②在代码中修改 V REP 的端口参数 M oDK 提供的 V rep 模型使用 3.04.00 版本的 V rep 开发,版本较老,而目前在官网上下载的 Vrep 版本已经到达了 3.5.0 。不过这并不需要用户进行太多的适配操作,新版本的 vrep 会向下兼容旧版本 vrep 的模型,不过 vrep 对外通信接口的端口号发生了变化,由 19998 变成了 19997 。 而例程中的端口号设置仍然是 19998 ,所以需要手动更改成 19997 ,该代码位于程序 71 行处: // 以下几步在此例程中并不需要进行 1 、在 Motion Configuration Utility 中将轴与 V REP 机器人模型进行对接 2 、导出轴配置文件( ini 格式) 3 、使用 MoDK API 中的 ini 文件读取函数进行参数读取和初始化 // ③观察控制现象 修改完成后,即可进行例程测试,点击 ctrl +F5 ,切换至 V REP 窗口,即可观察到机器人末端按照预定的轨迹点进行运动: 您也可以使用自己的算法生成所需要的轨迹在此 demo 中进行测试,如笔者的简易字符绘图: 三、 Simulation_move_absolute (Simulation) ①观察控制现象 此例程为纯文字仿真,不需要进行额外的操作。 MoDK 在 虹科 KPA 运行环境内创建了虚拟轴句柄, simulation 即对这些虚拟轴句柄进行虚拟化运动,反映在读取的各轴位置、速度值发生变化。 切换启动项目,按下 ctrl+ F5 ,即可开始仿真。 可以从控制台界面获取到轴的位置、速度等数据。 四、 M ove _ complex _drawing ( E therCAT & C iA 402 + Vrep ) 对于可控制的三种被控对象, MoDK 可以同时控制其中任意两种,此部分选取 Ether C AT 伺服电机 + V rep 机器人模型这两种比较直观的被控对象进行测试。测试控制的对象是三个 maxsine 的 E ther CAT 伺服电机,加上 Vrep 中的三轴线性机器人模型。 例程测试的步骤如下: ①在 虹科 KPA Studio 中进行网络组态 此部分操作与 4 .1 节的操作基本相同。 打开 虹科 KPA Master 后,打开 虹科 KPA Studio ,在 Studio 内连接上 Master 后,进行网络组态的扫描: ②打开 V rep 中的三轴线性机器人模型 留意此处线性机器人模型的名称,后续会使用到。并且注意到,机器人的 axis1 使用 y 轴坐标表示, axis2 使用 x 轴坐标表示。而代码的逻辑是按照 x 、 y 的顺序进行扫描的。因此在初始化配置的时候需要留意轴的编号指定,即将编号 1 ( x 轴)指定到 axis2 ,编号 2 ( y 轴)指定到 axis1 。 ②在 Motion Configuration Utility 中将轴与伺服电机进行对接 打开 M otion Configuration Utility ,进行如下操作,可以为一个电机轴绑定伺服: 注意需要在“ Secondary profile ”中选择 Vrep ,达到同时控制 E ther CAT 从站和 V rep 机器人模型的效果。 ③修改 V -REP 参数 接下来在此处进行 Vrep 参数的配置,在 V -REP 选项卡中将参数修改成如下图所示: P ort 端口即 Vrep 的通信端口,上文提到新版本的通信端口为 19997 ,因此此处需要修改。 J oint number 即机器人模型的轴编号,我们为第一个电机轴编号为 2 。 U se model feedback 即使用反馈,机器人模型的数据可以反馈至 虹科 KPA motion 的运行环境中来。 M odel ID 即 Vrep 中的机器人模型名,注意大小写需一一对应。 S caling factor 即标称值,代表机器人模型的尺寸与 虹科 KPA motion 运行环境中轴的比例系数。举例来讲, 同样的 MoDK 控制代码(如轴 1 向前移动 50 个单位),这个比例系数越大,则机器人模型运动的距离就越大。我们此处设置为 0 ,具体原因将在后文解释。 可能您注意到了,电机轴的命名为 Axis _X ( X =0,1,2… ),而 Vrep 中机器人模型的轴命名为 axis X ( X=1, 2,3… ),这两者是否需要一一对应? 答案是不需要, M otion Configuration Utility 中对于轴的命名是供 虹科 KPA motion 运行环境内部所使用的,并不需要与外界的对象进行对应。但 M odel ID 、 J oint number 是 虹科 KPA motion 运行环境索引 Vrep 中机器人模型的轴的必要条件,因此需要与机器人模型一一对应。 ④修改通用参数,克隆电机轴 打开 parameter 页面,将红框处修改成如下图的数值,使得 EtherCAT 伺服电机的运转现象明显一点。需注意,此处的 Scaling factor 数值,同样会影响到 Vrep 中机器人模型的运转,并且由于实际伺服电机的编码器数值一般来说都是以万为基本单位的。因此会陷入到这样一种怪圈:此处 Scaling factor 数值设置得大一点, Vrep 中机器人模型的运动幅度超过了能看到现象的限定值;设置得小一点, EtherCAT 伺服电机的运转现象又不明显。因此需要将 V -REP 页面下的 Scaling factor 置 0 ,虽然逻辑上看上去有硬伤(除以零),但是这样子做实际测试出来反而是最合适的。 此处为止我们已经完成了第一个电机轴的参数配置,接下来我们克隆电机轴,然后只需要为克隆出来的电机轴绑定伺服、设定 Vrep 机器人模型的轴编号、修改 V rep 端口号即可。 注意 A xis _1 的 Joint number 为 1 , Axis _ 2 的 Joint number 为 3 。 ⑤导出文件,修改源代码部分参数。 此部分操作同 4 .1 节,点击“导出按钮”导出文件至工程文件夹: 修改源代码的文件名宏,网卡编号宏: 运行过程中可能还会提示“ axes _group_ref 使用未初始化的内存”的错误,所以我们还需要在代码的 271 行处对其进行初始化操作,置 0 即可。 至此所有配置步骤已进行完毕。 ⑥观察控制现象。 按下“ ctrl+ F5 ”,即可看到控制现象: V rep 中机器人模型进行圆周运动, EtherCAT 伺服也在带动电机进行运动: 4 .5 小结 观察 MoDK 的例程代码,可以发现其程序编写遵循一个比较规整的三步走模式:声明变量→创建实例→函数调用, 轴控制 循环则采用状态机的方式实现。但或多或少这种 PLC 的编程方式在计算机语言编程上有点水土不服,虽然用起来的思路比较明确,但是代码量看起来会相当庞大,可维护性相对较差。如上一节的最后一个测试例程,其中近 400 行代码都用作初始化配置,主循环逻辑其实才 100 行出头。若是想要进行轴运动的扩展,又必须在初始化代码里面进行变量声明与创建实例,再于主循环中进行函数调用,代码量将极其庞大。 因而 MoDK 最好的使用方式,仍是结合 Straton 使用 PLC 语言进行开发。 Straton 拥有独立的变量编辑器,并且 P LC 功能 块创建 与调用本身就是一体化的,可以极大减少开发的工作量,程序的维护也变得直观与简单起来。
  • 热度 21
    2015-4-9 09:22
    1465 次阅读|
    0 个评论
      绝大多数自动化和过程控制项目都要提供操作员界面,以显示系统当前的状态。这些界面可能非常简单,也可能极为复杂。它们展现的是一个想象中的或者是现实存在的方面,是对整体工作质量的一个反应。图形的质量当然会留下一个持续的印象,因为它们每天都会出现在操作员面前。如果有制作一份关于如何创建图形的指南,它一定是一部巨著。当然,首先是一些客户对于图形的功能有一些标准。然而,还有一些关键的设计点可以让图形界面显得更加精致。   线条应该是水平或者垂直的。有角度的线必须有一定的含义,线条存在倾斜,这是最糟糕的问题。如果使用一些直线表示流程管线,这些线条的交汇必须表示某种含义,而接触到某种设备的线条需要表示真实的连接。现实中的管线可不能悬在空中。   使用线条的时候有两个基本选择:直线和折线。使用哪一种取决于设计师的意图。最后,真正关键的事情是保持一致性以及合理的结构。如果你使用线条元素,那么它也一定要满足上述规定。   颜色:界面元件的颜色必须有意义,并且在这个系统中应该统一。如果同一个过程元素在界面中的颜色到了所谓“第二阶段”的时候就发生了改变,这可是最容易引起混淆的做法。比方说,如果在一张图的大部分地方水是用蓝色表示,那么后续的所有图中水也应该是蓝色的。   阀门:在流程图中一般都表示为一个“领结”图案。“领结”需要置于管线或者线条的中间,表示过程管线的线条应该在领结后面不显示。   文本:首先,文字必须是准确的。除了准确之外,还应该做到优雅。合理对齐文字,不要想当然地认为中间对齐方式就适用于所有的情况。选择一种或者两种字体,并且坚持使用。无论出于何种目的,都不要采用拖拽的方法改变文字尺寸,因为一些系统将文字视为图形对象,这会产生不均匀的效果。改变文字尺寸,必须要通过调整字号的方式完成。   3D和动画实体:这些设计元素在宣传的时候看起来非常棒。但是,过度的使用这类实体,容易造成操作人员分神,并且占用了不必要的屏幕空间。如果你加进动画管线、风扇、电机或者其他小玩意,屏幕就会闪闪发光,这并不是什么聪明的做法。屏幕应该能够提供快速的参考信息。元素的闪烁和移动可能会吸引你的眼球。因此,只有在诸如报警这类重要的地方才需要使用动画。     位置:屏幕需要围绕中心点进行设计。这并不意味着主要的设备或者元件就要位于中心,而是指屏幕应该是围绕中心保持平衡的。要允许操作员把注意力放在中心,这样才能实现屏幕与屏幕之间更加平顺的切换。在设计屏幕中心的关注点的时候,要保证像菜单和标识之类的元素在各个屏幕之间位置一致。   空间:和位置一样,这也是有些主观的工作,但是确实需要考虑。相似或相关的元件需要平均地赋予空间。如果阀门和相关的标签名称随意并且散乱放在屏幕上,这会非常糟糕。元素放置的区域也应该保持一致,这样看起来才更像网格化的图形。     为未来做计划:制作易于维护的图形非常重要。绝大多数系统可以提供不止一项功能,比如网格和捕捉,这需要快速开发并且容易修改,从而帮助实现预期的设计意图。很多系统都出于各种原因提供了这些功能,那么就要使用它们。您可能不是下一个阶段或者修改时候的开发人员,但是谁知道呢?     最后,没有哪个建议可以保证设计出完美的系统。周密的计划和安排并且执行,才能实现成功的设计。这些建议只是能够让您的系统看起来更加专业和整洁。无论您的后台开发的多么精彩和多么充满技术含量,您能够展现给人们的还是这些可以看到的界面。
  • 热度 22
    2013-7-4 10:36
    1686 次阅读|
    0 个评论
    最近拜访参观了一家金属加工企业,在他们的生产线上看到一些依旧非常落后的生产方式。 我们看到操作工人熟练的、重复的做着相同的动作——不断的观察计时器的时间,然后调节整流器(也就是直流电源)的控制旋钮。起初是很好奇,然后,感觉到我们有必要使用更加智能,节能的方式,释放操作工人的自由。 希望通过本文章,让更多的企业管理者转变经营理念: 1. 低成本的设备,不等于低成本运营; 2. 更加智能,自动化才更保证高品质; 3. 更多的将员工释放,带来的是产品的创新,而不是重复机械的劳动;   一、电镀应用及电镀流程 1.1 电镀 (Electroplating) 就是利用电解原理在某些金属表面上镀上一薄层其它金属或合金的过程,是利用电解作用使金属或其它材料制件的表面附着一层金属膜的工艺从而起到防止腐蚀,提高耐磨性、导电性、反光性及增进美观等作用。 1.2 电镀的过程 基本如下: 1. 把镀上去的金属接在阳极 2. 要被电镀的物件接在阴极 3. 阴阳极以镀上去的金属的正离子组成的电解质 溶液 相连 4. 通以直流电的电源后,阳极的金属会氧化(失去电子),溶液中的正离子则在阴极还原(得到电子)成原子并积聚在阴极表层。 5. 电镀后被电镀物件的美观性和电流大小有关系,电流越小,被电镀的物件便会越美观;反之则会出现一些不平整的形状。 1.3 电镀工作条件 是指电镀时的操作变化因素,包括:电流密度、温度、搅拌和电源的波形等。   二、安捷伦系统就绪电源在电镀应用上的特点   2.1 什么是系统就绪电源 系统就绪电源就是针对系统应用要求,设计的电源产品,该电源具有系统电源要求的所有特征:   •           稳定性高 •          精度高 •          速度快 •          体积小 •          支持电压、电流的测量 •          能够补偿连接线的压降 •          控制接口灵活 •          兼容性好   2.2 安捷伦 N5700/N8700 系列直流电源 1. 尺寸小, 1U 满足 1500W ; 2U 满足 5000W ; 2. 节能,效率高,满功率输出下,效率可达 88% ,节省大量后续使用费用; 3. 设置及测量精度高,电压精度可达 0.05%, 电流精度可达 01.% ; 4. 稳定性好, MTBF (失效最大工作时间)高达 40000 小时, 20 年(每天 8 小时) ; 5. 可编程,支持各种工业控制接口,包括 GPIB , USB 及最新的 LXI   LAN ; 6. 系列化产品,共 45 个型号,支持 750W , 1500W , 3000W , 5000W 各种功率电镀应用;         三、电镀自动控制软件,实现 自动 精密电镀  3.1 电流控制是电镀是否精密的重要因数 电镀的是否美观或精密,与电镀的电流有直接关系。 1.       大电流下,电镀速度快,但效果会比较粗糙; 2.       小电流下,电镀速度慢,但效果会比较美观; 3.       为了达到美观和速度相结合,需要按照时间动态的电压或电流控制。将电镀过程分为两个阶段,第一阶段:电流或电压逐渐增加或减小;第二阶段:电流或电压保持。如下图: 3.2 系统就绪电源 结合自动 控制软件,自动按照设定完成电镀过程 我们曾经见到有些用户,为了动态实现电镀过程的电压或电流控制,使用手动电源,让操作员工按照一定的时间规律定期手动调节。每个员工只能操作 1 个或者几个电镀槽,效率非常低、而且员工非常的幸苦,还无法保持每次电镀的一致性! 使用安捷伦系统就绪电源,配合 自动控制软件后,每个员工可以轻松操作多个电镀槽,并能够保证非常好的电镀重复性能。 以下是关于该软件的介绍及安装使用: 3.2.1 软件安装及硬件连接 3.2.1.1 N5700 支持 GPIB , LAN , USB 多种控制接口,以 LAN 为例。将 PC 与 N5700 通过 LAN 连接。 3.2.1.2 修改和设置 PC 为固定 IP 地址,如 192.168.1.1 。 3.2.1.3 通过“ LAN ”按键,查看 N5700 自动分配的 IP 地址, 如 192.168.1.5, 并使用 Ping 指令确认 Ping 连接成功。 3.2.1.4 安装安捷伦 IO Library 接口控制连接库文件,如下: 3.2.1.5 安装 N5700 Auto Setting tool 软件。 3.2.1.6 通过 所有程序 -Agilent IO Library Suite-Agilent Connection Expert, 添加和确认 N5700 是否成功控制。     3.2.2 软件设置及使用 3.2.2.1 设置 Systemconfig .cfg 文件,确保 VISA 地址与第一步中 1.6 对应的保持一致。 3.2.2.2 启动软件,用户界面如下:   设置调整控制参数后(参数详细描述见下文), 点击“连接状态查询”,如果成功会显示连接设备的信息。 随后,点击“开始”进行 N5700 的自动控制过程。 3.2.2.3 软件参数描述 3.2.2.3.1 控制模式:电压 Voltage 或电流 Current ,及控制过程中是电压随时间变化,还是电流随时间变化。如设定电压随时间变化。   Start Value 初始值:电压或电流变化的初小值, 如 0V ; Stop Value 终止值:电压或电流变化的最大值, 如 10V ; Const Value 固定值: 电压或电流一直保持不变的参数值,如电压模式时,就是指电流的 Limit 值。 Change Time 变化时间:从初始值变化到终止值设定的变化时间,如 30 分钟; Step 1 变化调节个数:从初始值变化到终止值设定的变化个数,如 10 表示从 0V 到 10V 变化有 10 个台阶,每个台阶增加 1V((10V -0V)/10) ,持续 3 分钟( 30 分钟 /10 )。 Keeping Time 持续时间:在终止值电压或电流设定值保持的时间,如 45 分钟。 Step 2 变化调节个数:保持终止值电压,电流测量个数,如 45 。 即每 1 分钟( 45 分钟 /45 )测量一次电压和电流。 注意:变化时间 /Step 1 及持续时间 /Step2 均需要大于 0.3 秒; 测试完成后,会自动生成测试报告,包括设置电压 / 电流,测试电压及电流。 注 : 正常退出情况下,会自动将设置参数保持到配置 Systemconfig.cfg 文件 .  更多的系统就绪电源信息,可以访问以下网站: http://v.youku.com/v_show/id_XMzYxMjMzNzIw.html?f=17996506  
  • 热度 21
    2011-4-19 18:01
    1599 次阅读|
    0 个评论
    关键字:过程控制,控制系统,微纳科技 产品说明: 本系统采用郑州微纳科技有限公司研制的cSPACE快速控制原型和硬件在回路开发系统和水箱构成。 可实验项目是:    采用PID算法来控制水泵出口的压力;    水泵出口压力PID控制实验;    水泵出口流量PID控制实验;    单容液位PID控制实验;    水平双容液位PID控制实验;    水平三容液位PID控制实验;    垂直两容液位PID控制实验;    流量-液位串级控制实验温度控制实验。 详细的过程控制系统规格型号请参考微纳科技官方网站:www.winnermotor.com
相关资源