Differences between revisions 35 and 36
Revision 35 as of 2017-10-16 12:20:43
Size: 2980
Editor: KousekiMiyo
Comment:
Revision 36 as of 2017-10-16 12:22:27
Size: 2965
Editor: KousekiMiyo
Comment:
Deletions are marked like this. Additions are marked like this.
Line 39: Line 39:

=== TMCM6110の設定 ===
=== TMCM6110 ===
Line 43: Line 42:
=== How to control the motors from python script === === Check the connection ===
Line 50: Line 49:
(On 17/10/5)
確認
=== (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

latest sensitivity curve

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.

Check the connection

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

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

(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)