package charly.demo;
import charly.client.*;
import charly.server.devices.ChRobDeviceException;
/** A very simple class for sending a string to a GPIB-device.
* You can view the <a href="doc-files/ChSimpleRob.java.html">source here</a>.
*/
public class ChSimpleRob
{
public static void main(String args[])
throws Exception
{
System.out.println("usage: ChSimpleRob [TCP/IP-address]");
ChConnect conn=new ChConnect(args.length==0?"localhost":args[0]);
ChTask task=new ChTask("Simple Rob");
ChRobClient rob=new ChRobClient(conn);
task.addResource(conn, rob.getResourceName());
// resource: ROB3 as a device
task.start(true);
// wait until ROB3 is free for my task
rob.setTask(task);
// tell rob that it can use the ROB3 reserved for this application
try
{
int currPos=rob.getAxisPos(2); // getting current position of axis nr 2
System.out.println("Axis Nr 2 has the position:"+currPos);
System.out.println("Moving Axis Nr 2");
rob.setAxisPos(2, (currPos+50)%256);
} catch(ChRobDeviceException e)
{
System.out.println("ROB3 has problems:"+e.getMessage());
} catch(Exception e)
{
System.out.println("An unexpected exception occured:"+e);
}
task.stop();
System.out.println("bye");
System.exit(0); // This is not really necessary, but because it
// takes some time until that the system detects that there is
// no activity any more on the RMI-system, this method call
// shortens the waiting time immensely
}
}