酷德网

酷制造~
查看: 1645|回复: 5

使用CODESYS对Raspberry Pi进行编程

  [复制链接]
  • TA的每日心情
    擦汗
    2019-8-13 14:13
  • 签到天数: 32 天

    [LV.5]常住居民I

    发表于 2019-12-18 09:57:44 | 显示全部楼层 |阅读模式
    FY8W3AAIJ6CCDVA.LARGE.jpg F7VIQ82IJ7WP19H.LARGE.jpg

    你好,
    从本质上讲,这堂课是一个教程,可帮助您使用CODESYS环境对Raspberry Pi进行编程。
    这个指导性内容并不是针对业余爱好者,而是针对崭露头角的控制/自动化工程师。尽管CODESYS还是使用python控制GPIO,I2C和Pi的摄像头的不错选择。
    对于那些不知道的人,CODESYS是PLC编程环境,许多工业自动化公司都在使用CODESYS,例如Bosch,Beckhoff,Festo,Eaton,Wago等。您可以使用传统的梯形图逻辑对更现代的结构化文本和连续流程图(IEC 61131-3标准)进行编程。
    尽管通常非常昂贵并且针对工业环境,CODESYS还是发布了一个目标,该目标实际上将RPi变成了售价25英镑的PLC。
    在此指导中,我将向您展示如何控制Pi的GPIO。我还将介绍如何通过EtherCat通信协议控制相对便宜的Beckhoff I / O和小型Technosoft伺服电机,以及如何创建网络可视化以通过智能手机控制IO。它涵盖了相当多的内容,但是我已经将其结构化,因此希望您可以选择要选择的内容。
    这本指南将不会深入介绍如何使用IEC标准语言进行实际编程,除了使它移动起来的一些基本要点外,它还将重点放在硬件设置上。如果您想了解更多有关此的内容,建议您访问YouTube,在那里找到一些不错的视频。
    如果您对我上传的示例程序有任何疑问,请在评论中大声疾呼,我可能会为您提供帮助。
    我要感谢Kurt Braun,但是我观看的录像带给了我亲自尝试的灵感。

    第1步:您需要做的事情:
    FXTFVOUIJ7WP05D.LARGE.jpg F7B67T8IJ7WP05F.LARGE.jpg FMCCQO9IJ7WP05T.LARGE.jpg

    -Raspberry Pi(B,B +,2或3)
    -具有最新Raspbian Jessie的SD卡
    -CODESYS已安装在笔记本电脑/ PC上(仅Windows)
    -CODESYS Raspberry Pi目标
    - 以太网电缆
    通过以上操作,您可以试用系统并控制GPIO。但是,如果您希望使用EtherCat在工业方面做任何事情,则需要满足上述条件:
    -以太网到USB适配器
    -另一根以太网电缆
    -24V DC电源(最小2A)
    -工业EtherCat IO(带有EtherCat XML文件)
    我使用Beckhoff IO是因为我很熟悉,但是只要兼容,它就可以与其他人一起使用。您可以在ebay上找到一些便宜的Beckhoff装备。您将需要一个总线耦合器EK1100,然后是任意数量的IO(数字,模拟,编码器卡,步进电机驱动器等)。我有1x 8数字输入(EL1008)和1x 8数字输出(EL2008)。有关信息,请参见http://www.beckhoff.co.uk/
    如果要控制工业伺服电动机,则需要工业伺服电动机和EtherCat伺服电动机驱动器,这些驱动器可能很昂贵,但可以在ebay上找到它们。我设法从工作中借了一个,这很幸运,否则我将没有机会学习使用Pi进行控制。

    步骤2:安装CODESYS

    FRUIPZ6IJ7WP0OE.LARGE.jpg FFQD3CLIJ7WP144.LARGE.jpg FLNFWHFIJ7WP222.LARGE.jpg F3AAWXPIJ7WPAE4.LARGE.jpg

    3S Smart Systems并没有像下载您希望的那样简单地下载Raspberry Pi的CODESYS并启动和运行它。但是,如果坚持使用它,您将获得一个易于使用的编程环境。
    要下载CoDeSys(COntroller开发系统),请转到以下链接:
    向下滚动并单击“以Codesys用户身份下载中心”。
    在实际下载程序之前,您必须首先获得一些登录凭据。单击“注册”链接(红色),然后您必须选择一个国家并填写表格。然后,您将收到一封包含一些登录凭据的电子邮件。
    如果您返回下载中心(单击红色的注册链接),现在可以在输入用户名和密码后下载最新CODESYS V3的exe文件。
    下载文件后,打开exe文件,如果Windows试图阻止该文件,则选择“仍然运行”。按照安装向导进行操作。我偶尔注意到下载此文件时会出现错误,并且无法启动安装向导,如果发生这种情况,请尝试重新下载exe文件。
    如果您在为空间而苦苦挣扎,则只需安装以下功能:
    -CODESYS V3
    -CODESYS网关
    -CODESYS OPC服务器
    安装CODESYS后,现在需要向其中添加Raspberry Pi软件包。为此,您首先必须访问CODESYS商店并下载软件包。商店的价格为35欧元,但这仅在您希望在Pi上运行程序2个小时以上的情况下才适用。否则,它是完全免费的,并且在所有CODESYS都针对行业之后,您只需每2小时将程序重新下载到Pi上即可。
    不幸的是,要下载此文件,您将需要另一个用户名和密码,因此您必须注册CODESYS Store。如果单击下载按钮,它将提示您登录。如果您单击此链接,则可以注册商店。注册后返回下载页面,然后单击下载。将此内容下载到令人难忘的地方,下一步将需要它。
    下载软件包后,您将需要打开CODESYS并安装它。我将在下一步中说明如何执行此操作。

    步骤3:连接到Pi
    FC0KJUBIJ8WWUP7.LARGE.jpg F2D3PQ5IJ8WWUW9.LARGE.jpg FQZMD2XIJBRRT4N.LARGE.jpg FNMM02MIJBRRUZK.LARGE.jpg F5PEIOSIJBRS8NO.LARGE.jpg FD74G2DIJG25CZF.LARGE.jpg FVARJIOIJG25DJ1.LARGE.jpg

    现在,我们已经下载了所有需要的内容。现在该开放探索CODESYS并将其连接到Pi了。
    从开始菜单或桌面快捷方式中打开CODESYS,您将要打开一个显示“ CODESYS V3.5 SP8 Patch 2”的代码(开始编写此Instructable时为SP8 Patch 2)。应该为您提供类似于图片的内容,以及显示最新CODESYS新闻的起始页等。
    安装我们在步骤2中下载的Raspberry Pi软件包。
    -在工具栏上,选择工具>程序包管理器...
    -单击新窗口右上方的“安装..”。
    -查找并选择您先前下载的软件包。
    -按照安装向导进行操作,选择完整安装。
    现在我们终于可以开始一个项目了。
    -从工具栏中,选择文件>新建项目...
    -选择“标准项目”,为其命名,选择一个保存位置,然后单击“确定”。
    -在新窗口的设备下,选择“ Rasperrby Pi的CODESYS控件”,在PLC_PRG下,选择“结构化文本(ST)”。
    您会注意到在屏幕左侧,出现了一个设备树(参见图片)。CODESYS已自动为您创建了一个主程序(PLC_PRG)和一个从中调用PLC_PRG的任务(MainTask)。PLC是实时设备,它们以不同的周期时间运行任务。任务管理可能很复杂,因此我现在不再赘述,但是在CODESYS上的Youtube教程中已经介绍了它。您需要知道的是,每次任务运行时PLC_PRG都会循环运行(默认为每20ms),读取输入并设置新的输出,实质上是一个巨大的连续循环。下一步,我们将编写第一个程序来控制Pi的GPIO。但首先如何连接到Pi。
    -启动Pi并使用以太网线将其插入路由器(或PC的以太网端口,重要的是Pi与PC在同一网络上)。您必须为Pi使用以太网电缆,它不能通过Wifi上网(或者至少不能与我一起使用)。
    -使用监视器或使用高级IP扫描仪之类的工具,请注意为Pi提供的IP地址。
    -在CODESYS>工具下的工具栏下,单击“更新RaspberryPI”
    -如果没有出现,则必须单击“自定义”,展开工具,然后单击“添加命令...”,找到Raspberry Pi,然后将“ Update RaspberryPI”添加到工具栏菜单。
    -输入您的登录信息和Pi的IP地址。
    -更新Pi后(在CODESYS屏幕左下角闪烁的橙色消息选项卡会通知您,消息为“ Update Completed”)。
    -双击设备树中的设备。
    -在弹出的新页面上,您应该在文本输入字段中看到设备名称(参见图片)
    -在此处输入Pi的IP地址,然后按Enter。
    -现在,您应该已连接到Pi。
    注意:每次创建新项目时,都必须执行此操作,然后才能运行该程序。

    步骤4:GPIO控制

    FWAYHZQIJG26BRF.LARGE.jpg    FJTF70RIP5RCN6S.LARGE.jpg F8F4V93IP5RCORO.LARGE.jpg

    现在开始我们的第一个程序的时间,由于我编写此Instructable的方式,我不得不在这里提前道歉,但是其中一些信息可能会在下一步中重复,但这仍然很重要。
    我们将创建一个简单的闪烁例程,以使连接到PI GPIO的LED闪烁。我将由您自己来连接LED,可以找到许多其他Instructable来为您提供建议。另外,您不必担心硬件元素,只需在屏幕上查看结果即可(或在引脚上使用万用表)。
    -在CODESYS中启动一个新项目,并按照步骤3所示的方式连接到Pi。
    -在设备树中双击“ PLC_PRG(PRG)”。
    -现在将屏幕快照中的文本(为了方便起见,已附加了.txt文档)复制到正确的窗口中,注意顶部窗口是声明变量,底部窗口是代码。本质上,这是一个基于两个计时器的闪烁例程,以使GPIO上的引脚4闪烁。现在,我们需要将变量“ Output1”链接到我们的GPIO,以执行以下操作:
    -双击设备树上的“ GPIOs_A_B(GPIOs A / B)”。-转到“ GPIOs参数”标签。
    -在GPIO4行上,通过双击该值框并选择“ Output”(输出)来将GPIO定义为输出,以将其定义为输出(参见图片)。
    -现在选择选项卡“ GPIOs I / O映射”,扩展输出选择并双击“ Bit4”的变量框(对于GPIO上的Pin4)。(参见图片)-单击“ ...”,它现在出现在框中。(见图)
    -现在我们需要选择变量Output1,在Application> PLC_PRG中找到它,然后双击“ Output1”。现在,该输出已映射到该变量。
    -要运行程序:
    -按下键盘上的“ F11”,即可构建/编译代码。也可以在工具栏上的“构建”下找到。
    -编译代码后,按键盘上的“ Alt + F8”以登录到Pi(或PLC现在为其输入正确的名称)。也可以在工具栏上的“在线”下找到。
    -在弹出窗口中单击“是”以下载程序。
    -下载程序后,按“ F5”运行程序。也可以在工具栏上的“调试”下找到。
    -现在,您应该在屏幕上看到正在播放的实时流,根据程序的指示,代码上的变量应从True闪烁为False。如果选择连接,您还应该看到LED闪烁。
    -要停止代码,请按键盘上的“ Shift + F8”。也可以在工具栏上的“调试”下找到。
    此时,如果您没有任何“工业” IO或电机,请随时查看“可视化”步骤,但请尝试将其应用于该项目,而不是工业IO。
    Blink.txt (649 Bytes, 下载次数: 6)
    打赏鼓励一下!
    +10
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-2-19 20:06
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    发表于 2020-1-1 07:53:03 | 显示全部楼层
    很好入门教程,顶一下
    打赏鼓励一下!
    +10
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2020-1-5 19:33:47 | 显示全部楼层
    学习学习学习
    打赏鼓励一下!
    +10
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2020-2-29 21:35
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2020-2-29 23:36:33 | 显示全部楼层
    webvisu.htm  打不开 楼主知道乍回事吗?
    打赏鼓励一下!
    +10
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-3-3 21:02
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2020-3-3 19:55:26 | 显示全部楼层
    写的很好入门了吧!
    打赏鼓励一下!
    +10
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    
    顶部qrcode底部
    关注酷德网订阅号,获取更多资讯!

    QQ|小黑屋|手机版|Archiver|酷德论坛 ( 苏ICP备16065247号 )|网站地图

    GMT+8, 2020-7-14 10:33 , Processed in 0.262097 second(s), 70 queries , MemCache On.

    酷德网

    © 2001-2013 Hicodesys. 技术支持 by 酷德网

    快速回复 返回顶部 返回列表