OregonMaxe Stepper Motor Wizard

Welcome to the Oregon Maxe Stepper Motor Wizard . This page will help you add a new  OregonMaxe stepper motor device to the TANGO database. It explains all the properties supported by the OregonMaxe device server and provides sensible default values for a typical motor.  As a final step the Wizard allows you to start the device server on the host of your choice. A section at the end explains how to install an Oregon stepper motor controller card plus information on the jumper settings, cabling etc.
 

1. Add an OregonMaxe Device

Add a single 8-axes OregonMaxe device to the TANGO database. Enter the server name, device name and axes names. Modify the default resources (if necessary) and press the Add button.


server instance name - the name with which this instance of the OregonMaxe server will be referred to (e.g. id11)

device name  - the device name which will be used by the client to access access all axes (e.g. id11/oms/1)

number of axes - the number of axes supported by this device (e.g. 8) maximum=8, minimum=1

device descriptor - the device descriptor is used to identify which oregon card this device refers to (e.g. /dev/oms0)

support events - the OregonMaxe device server supports events to inform registered clients of state or position changes (e.g. yes or no) yes=events, no=no events

The following properties refer to default values for each of the axes. For SPEC users all these values except for channel number are irrelevant because SPEC reprograms them dynamically.

axes name - the 2 field base name for each axis (e.g. id11/axis)  the channel number is added as third field

channel - the motor axis number on the Oregon controller of the first OregonMaxe axis (e.g. 1) numbering will start there and increase monotically

velocity - steady rate velocity after acceleration in steps/second (e.g. 100000) maximum=1 000 000, minimum=1

firststeprate - initial velocity to start moving motor at in steps/second (e.g. 10 000) maximum=1 000 000, minimum=1.

acceleration - acceleration in steps/second/second to apply in going from firsteprate to velocity (e.g. 100 000) maximum=8 000 000, minimum=1

backlash - backlash to apply after a movement (e.g. 1 000) applied when the movement is in the same direction as the sign of the backlash


2. Start the OregonMaxe Device Server

This section allows you to start the OregonMaxe device server you have just added to the TANGO database above. Enter the server name and hostname and press the Start button.


server instance name - the name with which this instance of the OregonMaxe server will be referred to (e.g. id11)

host name  - the host on which to start the OregonMaxe device server (e.g. crate027)


3. Installing the Hardware

The hardware for the OregonMaxe consists of an OMS controller card (VME58 or PC68), a grey cable going from the controller card to and adapter board, an adaptor board for the ESRF DPAP7 crate, cables from the adaptor board to the DPAP7, an RSM8 crate, cables from th DPAP7 to the RSM8, cables from the RSM8 to the motors. The motors, RSM, DPAP7 and their cables should be installed with help of a cabler and/or the electronics contact of the beamline. The adapter card can be procured from the Instrument Support Group. The OMS controller card has to be correctly jumpered for its base address and interrupt line. This is done as follows :
  1. VME58 - set base addres to 0xffff1000 i.e. jumper J16  10011000  where 0=AM15 is closest to P2

  2. Photo of OMS VME58 card showing jumper J16 settings

    Figure 1. Photo of OMS VME58 card showing J16 jumper  settings (click for zoom)



  3. PC68 - set base address to 0x340

4. Installing the Software

The OregonMaxe device server runs on Linux. For this reason you need Linux running on a Motorola 68k on VME or on an Intel based PC/104. You get this from the Systems and Communication Group. In addition you need the OMS device driver (vme58.o or pc68.o) available from saphir:/segfs/dserver/classes++/motor/oregon/oms/driver/oms-2.0/src. And last but not least you need the OregonMaxe device server which is available from saphir:/segfs/dserver/classes++/motor/oregon/src (excutable is called OregonMaxeds). Install the driver in /lib/modules of the NFS disk of the Linux system. Install the device server in /home/bin. Modify the /home/bin/crate.startup to create the OMS device descriptor (/dev/oms0) and load the device driver. Set NETHOST and start the OregonMaxeds by hand and/or add it to crate.startup. If you have used the OregonMaxeds wizard (this page) most of the work wll be done for you. Here is an example of a crate.startup :
#
# this script has to be run as root at startup time
#
/home/bin/esrfchip2
mknod /dev/oms0 c 26 0
/sbin/insmod /lib/modules/vme58.o
NETHOST=pi-id11; export NETHOST
/home/bin/OregonMaxeds id112s11_0&

5. Background

What is the OregonMaxe device server ? The OregonMaxe device server implements the Maxe multiple axe set of commands for controlling multiple axes of an Oregon stepper motor controller. The Oregon stepper motor controllers supported to date are the VME58 on VME and the PC68 on PC/104 from OMS. All the basic Maxe commands are supported by the OregonMaxe so that it looks like a Vpap Maxe to programs like SPEC. A number of Maxe commands are still missing but they can be added on request (refer to the OregonMaxe User Guide for a full list of commands implemented).

Why use the OregonMaxe device server ? The Oregon stepper motor controller is interesting for applications which require fast microstepping. The Oregon controllers can count up to 1 MHz compared to the Vpap which has a maximum count speed of around 20 kHz.

How to use the OregonMaxe device server ? First step is to buy, install and cable and Oregon controller (see section on installing the hardware). The second step is to add an Oregon device to the database with help of the wizard (see section Adding an OregonMaxe Device). The third step is to start the device server (see section Starting the OregonMaxe Device Server).
 
 



This site is under construction. Please send comments to goetz@esrf.fr Last changed 19/12/99.