Problem Statement
The basic idea behind the study of the Fischer Technik robot design was to
evaluate the APIs and to measure the temporal properties for all operations.
The Fisher robot can be used as a design tool for the preliminary stage
evaluation of industrial sized projects which require temporal properties to be satisfied.
Including the real time properties into the initial phases itself will provide
a better tool for the designers to evaluate their initial design and provide them
with the evaluation tool required for verification without developing the expensive
prototypes.
Introduction
Because of it's unlimited usability, fischertechnik is superbly suited for simulation
and training in industrial applications. Very often, industry models are built to plan
plants and machines so you are able to detect and solve problems in advance.
Fischertechnik can be used to simulate very complex factory automation projects;
this makes planning the real plant much easier and will save money.
Initially fischertechnik was the very first computer-controlled construction kit onto
the market. It includes computing construction kits for training robots, plotters /scanners
and Experimental Computing. In 1991 the fischertechnik software was released which
created possibilities of downloading programs onto the board.
Parallel to this, various drivers for the Intelligent Interface, e.g. for the following programming
languages: C, C++, VisualBasic, Delphi etc. IIXPL, a completely new programming language,
was developed specially for the Intelligent Interface.
H/W specification
This active interface is the kernel of the Computing kits. It controls communication
between the PC and the models. Its function is to convert the software commands
so that a motor will run when you operate a button on the model. The interface
has eight digital inputs where pushbutton signals (0 or 1) or phototransistor and
Reed contact signals can be evaluated. There are also two analog inputs which
can read resistances ranging from 0 to 5 kilohms. There are four reversible motor
outputs to control lamps, motors or d.c. relays. This means that you can change
the motor's direction of rotation (by program) at any time. We supply a battery
holder to power the interface. You can also use any mains adapter with a direct
current of about 9 Volts and a power of about 5 Watts.
This computer interface hardware for FischerTechniks Computing series building
kits include components at par with any PLC control system.
Specification:
retained even if the power supply is disconnected.
are brought out - for convenient connection of finished models through
a single 26-pole connector
3-axis robot with grabber claw, 4 DC motors operating with either 9V or 24V, 4 limit
switches, 4 pulse counters for travel measurement, all counters are zero-potential.
Model mounted on stable wooden panel, packed in a wooden box.
Degrees of freedom -
Axis 1: 180° of rotation
Axis 2: 100 mm back and forth
Axis 3: 160 mm raise/lower
External Interfaces
The Robot provides 2 interfaces for programming the Robot .The first interface
provides support for programming the board which has been divided into 3 basic programs.
The RAM space is left free for the user to download
the program onto the microcontroller and execute.The RAM is refreshed each time the
power supply is reset from the board provided with the Fischer Technik robot.
The other interface works in an online mode where an external microcontroller/microcomputer
controls the robot through a serial port/USB port supported by the Board provided with the
Robot.The ports provide I/O operations though which an external logic controller can provide the
control logic.
C Compiler
Fischer robot also provides a C compiler and an IDE is provided to directly program the
board provided with fischer robot.
Case Study
For the first step into the evaluation process the Robo interface provided with the
Fischer Teknic was used for programming.The USB interface provides an online mode of controlling the robot.
JavaFish
The class JavaFish contains a number of methods and properties to access the
fischertechnik Interfaces. JavaFish uses the Wrapper-DLL javaFish.DLL for access to
the common umFish20.DLL via JNI. To obtain all changes of the E-Inputs, umFish20.DLL polls
them with high priority (using the MultiMediaTimer) in intervals of about 10 msec. In addition
to the polling a refresh of the M-Outputs is done. If requested, it reads EX / EY too. The
state is stored in an internal control block (can be determinined with instancing). The changes
of the E-Inputs are counted and stored in special counter fields. These counters can be used for
determining the position of an model (look for "impulse wheel" on the Industry Robots).
Sample code
Robot motion video
Results
The simple design of the fischer teknic robot makes it easy to program and control the robot.Also
high levels of precision can be achieved by additional design changes to fischer robot.The 3 axes
provide free motion on all three axes with relative ease. The C / Java language interface provided with the robot
makes it easy to program the robot.
Future Work
In future 2 possibilities can be explored further -
1) Fischer robot can be controlled by a RT operating system using the serial or USB
interface and the model can be programmed to include real time properties.
2) The C compiler provided by one of the software providers can be used to provide a measure
of the timing constraints between each subsequent action/command.Also a library than can
be built to provide the necessary temporal properties that are required.