Differences between revisions 38 and 39
Revision 38 as of 2017-10-16 12:24:08
Size: 2994
Editor: KousekiMiyo
Comment:
Revision 39 as of 2017-10-16 12:25:22
Size: 3008
Editor: KousekiMiyo
Comment:
Deletions are marked like this. Additions are marked like this.
Line 44: Line 44:
=== Check the connection === === python script ===
Line 51: Line 51:
=== (On 17/10/5) === === check the connection (On 17/10/5) ===

Overview

This system is to control the stepper motor of GAS and IP in VIS suspension using the KAGRA DGS network.

  • If you control with serial in local place, please see the manual written by Sekiguch [JGW-xxx].
  • In this system, anyone control stepper motor with medm screen via EPICS channels managed by PCAS (Potable Channel Access Server).
  • 2017/10/13 : medm screen is not yet.

How to use

Run the PCAS to activate the EPICS channels for stepper motor control.

  • PCAサーバは、各EPICSチャンネルの値の変更に応じて指定のコマンドを送るためのもの
  • なので起動しないと、ボタンを押してもコマンドが送れずモータが動作しない。
  • 起動をするには、MEDM画面からボタンを押すだけ(の予定)

After activate, control the stepper motor using the medm screen

  • 速度を設定する。デフォルトでxxx。
  • ステップを設定する。デフォルトでxxx。
  • 動かす。FWDで正転、REVで反転。

Setup

Nport5150

Serial setting

Network setting

  • IPaddress : 10.68.150.xx (Please change the IP address according to where you want to use it.)
  • Netmask : 255.255.0.0
  • Gateway : 10.68.10.1
  • IP Configuration : Static

Operation Mode setting

  • choose ’TCP Server Mode’
  • port : 4001

TMCM6110

Do not use in ASCII mode. Use binary mode.

python script

コマンド送信はPythonのソケット通信ライブラリを使って実装、ライブラリ化した。

  • モータドライバ側はBinaryでコマンドを受け付けるので注意が必要。設定すればASCIIでも可。
  • バイナリコマンドを直接socketで送りつけるPythonコードがあったので、それを使う。
  • それ改変して、最小限動かすのに必要な関数を集めたPythonクラス ’KAGRA_stepper’ を用意した。
  • 実際のモータを動かすための設定ファイルを用意した。(モータの配線、IPの自由度へのマトリックス)

check the connection (On 17/10/5)

確認のしかた

  • Go to the directory: /kagra/Dropbox/Subsystem/VIS/TypeBp/Script/steppingmotor/
  • start ipython
  • in ipython, type the command as follows.

from Trinamic_control6110 import *
driver = Trinamic_control6110()
driver.connectTCP('your ip address', 4001)
driver.reconnect()

and if it says '...ok', the motors are replying. If error occurs, try to restart the motor drivers as well as Nport. Just turn off and on the power.

  • In order to move it,

driver.setTargetPosition(step,motor_number)

Insert the relative step in to the 'step', and insert the motor number into 'motor_number.'

KAGRA/Subgroups/DGS/Projects/StepperMotor (last edited 2022-08-02 16:57:38 by satoru.ikeda)