前回はRevPIの立ち上げを簡単に説明しました。今回はCodesys RuntimeをRevPI Connectを入れてみましょう。実際普通のRaspberry PIにCodesys Runtimeをインストールするよりもう少し手間かかるだけです。
よろしくお願いします。
Thanks!
この記事で使用するRevPI ConnectはPILZ JAPANが貸してくださった機材です。
PILZ
PILZは安全およびオートメーション技術のソリューションでトータルソリューションサプライヤとしてのFA現場を支え、人の安全だけではなく、機械、および環境の安全を保証し、機械や設備をいかに安全に稼働させます。ピルツは全世界に42の現地法人や支社を設置し、包装、自動車産業、ロボットアプリケーション、さらに風力発電、鉄道技術など様々な分野で活躍しています。
Office:
ピルツジャパン株式会社
〒222-0033
横浜市港北区新横浜3-17-5
いちご新横浜ビル 4階
HP
Be Careful!
注意するにはPiCtoryはCodesysは同時に運用はできません。Codesysにアプリケーションを入れ込むと、RevPIは毎回CodesysプロジェクトからHardware Configurationを生成し、PiCtoryのConfigurationを上書きします。
なので、Codesys Applicationが使用するとPiCtoryは現在のConfiguratiionを読む・確認だけの役割になります。
Reference Link
Download Libarary
ではまずRevolutiopiのHPからライブラリをDownloadしましょう。
必要なのはRevolution PI Library for CODESYS・CODESYS Controll for Raspberry PI 4.4.0.0になります。Revolution PI Library for CODESYSはCodesysに”RevPI系のデバイス”を追加できるようにするため、そしてCODESYS Controll for Raspberry PI はRaspberry PIにCodesys Runtimeを走るためにCodesys Packagesです。
https://revolutionpi.com/tutorials/downloads/#
Install Revolution PI Library
Revolution PI Libraryを解凍し、RevolutionPiBridgeVxxxx.packageをダブルクリックします。
もしPCに複数のCODESYS Runtimeがあれば、必要なRuntime VersionをCheck入れましょう。
例えばV3.5.17.30にインストールするのであれば、CODESYS 64 3.5.17.30をCheck入れ、Continueします。
ライセンスに同意し>Continueします。
しばらく待ちます。
Done!
Install PI Packges
CODESYSからもしくは先のLinkからCODESYS Raspberry PackageをDownloadし、先のRevolution PI Libarayと同じようにインストールしましょう。
下記のLINKで参考してください。
Update Raspbery Pi
RevPI ConnectにCODESYS Runtimeをインストールします。Codesysを起動し>Tools>Update Raspberry Piします。
必要なCODESYS Runtime Packageを選択し>Installします。
Runtime Modeを選びましょう。今回はStandardします。
Your First Project!
ここまで来たらもうプロジェクトを作成してみましょう。
Add New Project
CODESYSを起動し>File>New Projectします。
Standard Projectを選び>OKします。
Device TypeをCODESYS Control for Raspberry Pi MC SLxxxを選び>OKします。
Add Device
次はProjectにRevPI Connectを追加します。Device右クリック>Add Deviceします。
Piを検索し、RevPI Connectを選択し>Add Deviceします。
これでRevPi_Connectが追加されました。
ADD GVL
Global Variable Listを追加します。Application>Add Object>Global Variable Listします。
GVL内にRevPI Connect用のStatus Byte変数を定義します。
{attribute ‘qualified_only’} VAR_GLOBAL RevPiStatus :BYTE; RevPiIOCycle :BYTE; RS485ErrorCnt :WORD; Core_Tempature :BYTE; Core_Fequency :BYTE; LED:BYTE; init:BOOL; END_VAR |
Main Program
次はMain Programですね。
VAR
PROGRAM PLC_PRG VAR Status:BYTE; IOCycle:BYTE; RS485_ErroCnt:WORD; Core_Temperature:BYTE; Core_Fequency:BYTE; A1,A2,A3 :INT; END_VAR |
PROGRAM
次はRevPI ConnectのByte Statusをプログラム内に転送し、そしてA1,A2,A3の与え値によって赤・緑・オレンジ色のLEDをONします。
Status:=GVL.RevPiStatus; IOCycle:=GVl.RevPiIOCycle; RS485_ErroCnt:=GVL.RS485ErrorCnt; Core_Temperature:=GVL.Core_Tempature; Core_Fequency:=GVL.Core_Fequency; CASE A1 OF 0: GVL.LED.0:=FALSE; GVL.LED.1:=FALSE; 1: GVL.LED.0:=TRUE; GVL.LED.1:=FALSE; 2: GVL.LED.0:=FALSE; GVL.LED.1:=TRUE; 3: GVL.LED.0:=TRUE; GVL.LED.1:=TRUE; END_CASE CASE A2 OF 0: GVL.LED.2:=FALSE; GVL.LED.3:=FALSE; 1: GVL.LED.2:=TRUE; GVL.LED.3:=FALSE; 2: GVL.LED.2:=FALSE; GVL.LED.3:=TRUE; 3: GVL.LED.2:=TRUE; GVL.LED.3:=TRUE; END_CASE CASE A3 OF 0: GVL.LED.4:=FALSE; GVL.LED.5:=FALSE; 1: GVL.LED.4:=TRUE; GVL.LED.5:=FALSE; 2: GVL.LED.4:=FALSE; GVL.LED.5:=TRUE; 3: GVL.LED.4:=TRUE; GVL.LED.5:=TRUE; END_CASE |
Mapping
次はGVLで定義した変数をRevPi_ConnectにMappingします。
Status Byte
Bit | Description |
0 | piControl driverは稼働中 |
1 | 最低限1つのモジュールがRevPIと接続してるがPiCtoryから構築されていない |
2 | 最低限1つのモジュールがPiCtoryに構築されていたが、実際接続してない |
3 | I/O ModuleはConfigurationのProcess Images占有数はPiCtoryと合わない。PiCtoryを更新しましょう。 |
4 | RevPi GateモジュールがRevPiの左側に接続しています。 |
5 | RevPi GateモジュールがRevPiの左側に接続しています。 |
6 | |
7 |
Login
最後はProjectをDownloadします。Deviceをクリックします。
Scan Networkします。
RevPIXXXが表示されます。該当するデバイスを選び>Okします。
Yesで進みます。
CodesysにLoginするUser NameとPasswordを入力します。
Logonします。
Codesysの通信設定もOKになりました。
最後はLoginでProjectをDownloadしましょう。
Yesで進みます。
Result
RevPI_Connect Objectをクリックします。
いまはRunningの状態ですね。問題なし!
Revolution PI Connect I/O Mappingを開くと、いまのStatusは1、つまりRevPI Connectが稼働中で、そしてRevPIの温度やFrequencyも一覧できます。