Beckhoffの補間動作機能「NC I」の2つのサンプルプログラムの内、Gコードを使用する「NCISimpleSample」を動かします。
指定フォルダにGコードが記述されたファイル「first.nc」を置き、プログラム上でこのファイル名を指定する変数の値を入力する必要があります。
(最初はTwinCAT3で追加されたGST(G-code and ST)という機能を使うようになっていますが、本稿ではTwinCAT2のときからあるGコードのみで記述された「first.nc」を使います)
1 構成
![](https://control-design.jp/wp-content/uploads/2023/03/image-842.png)
2 サンプルプログラムのダウンロード
Beckhoff Twincat3 InfoSysの下記リンクから「3438746891.zip」をダウンロードします。
https://infosys.beckhoff.com/english.php?content=../content/1033/tf5100_tc3_nc_i/3281888011.html&id=
![](https://control-design.jp/wp-content/uploads/2023/03/image-865.png)
3 サンプルプログラムを開く
ダウンロードしたZipを解凍しておき、TwinCAT3 XAEを起動します。
“FILE”の“Open Solution from Archive…”を選択し、解凍したフォルダ内の「NciSimpleSample.tnzip」を開きます。
![](https://control-design.jp/wp-content/uploads/2023/03/image-844-1024x258.png)
4 Gコード用ファイルの格納
Zip解凍後のフォルダにある拡張子「first.nc」のファイルを、TwinCAT3が動作するコントローラの「TwinCAT\Mc\Nci」フォルダに置きます。
![](https://control-design.jp/wp-content/uploads/2023/03/image-845.png)
5 サンプルプログラムの立ち上げ
CX5140とオンライン接続した状態とします。(Localで実行する場合は不要)
“BUILD”>“Build Solution”でビルドします。
![](https://control-design.jp/wp-content/uploads/2023/03/image-846.png)
“Activate Configuration”を選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-847.png)
“OK”
![](https://control-design.jp/wp-content/uploads/2023/03/image-848.png)
“はい”
![](https://control-design.jp/wp-content/uploads/2023/03/image-849.png)
“OK”
![](https://control-design.jp/wp-content/uploads/2023/03/image-850.png)
“Login”
![](https://control-design.jp/wp-content/uploads/2023/03/image-866.png)
“Yes”
![](https://control-design.jp/wp-content/uploads/2023/03/image-852.png)
“Start”
![](https://control-design.jp/wp-content/uploads/2023/03/image-867.png)
6 動作確認
6.1 プログラムの操作
“FB_SimpleNciSequence”の変数“sPrgName”の“Prepared value”に“first.nc”を入力して“Write values”を選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-854.png)
プログラムPOU“MAIN”の変数“bExeSimpleNci”の“Prepared value”に“TRUE”を入力して“Write values”を選択すると動作します。
![](https://control-design.jp/wp-content/uploads/2023/03/1.gif)
6.2 Scope view
あらかじめScope viewのサンプルが含まれていますが、新たに“XYZ Scope”を追加してみます。
“TwinCAT Measurement Project1”を右クリックし“Add”から“New Item”を選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-856.png)
“XYZ Scope Project”を選択し任意の名前を入力して“Add”を選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-857.png)
追加した”Scope Project1″を右クリックし”Change Target System”からターゲットを選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-858.png)
“DataPool”を右クリックし”Target Browser“を選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-859.png)
ターゲットの“501:TCNC.NcTaskSaf”を選択し、“Axes”の“X.ActPos”を右クリックして“Add to Scope”を
選択します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-860.png)
同様に“Y.ActPos”と“Z.ActPos”を追加します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-861.png)
追加した3個のActPosを複数選択して“Axis Group”に追加します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-862.png)
以下のようになります。
![](https://control-design.jp/wp-content/uploads/2023/03/image-863.png)
“Start Record”を選択しロギング開始します。
![](https://control-design.jp/wp-content/uploads/2023/03/image-864.png)
プログラムPOU“MAIN”の変数“bExeSimpleNci”の“Prepared value”に“TRUE”を入力して“Write values”を選択すると動作します。
![](https://control-design.jp/wp-content/uploads/2023/03/6.gif)
7 参考文献
Beckhoff: TF5100 | TwinCAT 3 NC I
以上。