Football Table Table

From Control Systems Technology Group
Jump to navigation Jump to search

How it works

The semi-automated foosball table has two DOF per rod.

Starting it up

Homing

Things to watch

Run-time

Transport

Maintenance

In this section describes what to do when maintenance is required.

Replacing a cable

Cables often wear out and eventually snap, also sometimes cables can get wound up by a failure and deform.

Other maintenance

Ordering new parts

For mechanical parts (so not e.g. balls), mostly Pieter will order them himself as he also does the maintenance. If you require new cables you can should also requist him to order new ones, it always comes in handy if you bring a cable as an example (or measurements). It is important to note that the current cables are on the short side, so it is wise to order cables ~0.25 meters longer than the current ones.

Common causes of error

Here we describe some common causes of error, which can occur despite correct usage.

Diagnostics

There is a log file available in the main folder, called MOTION.mat. Here the measured position and the sent control signal are beeing logged. Use your control-knowledge and common-sense to examine this data and find the problem.

Poor overal performance

Symptoms: often loosing sight of the ball, missing the ball completely with attempting to shoot.

Bad performance, table soccer-wise is often too to bad detection/calibration. Take into account that changing lighting conditions have a significant impact on the overal performance of the localization. It is not uncommon that lighting conditions change significantly during a day, espicially in a room with direct sunlight.

A quick fix can often be achieved by adjusting the fluorescent lights over the table using the dimmer, to cope with the changed conditions. Similarly adjusting the exposure time (ET) can help. If changing the lighting conditions does not help, then it is advisable to fine-tune the color-calibration itself. When using the white ball, checking and fixing the mask positioning is also advisable.

Sometimes the position of the overhead camera changes during transport, which in turn messes up the camera calibration e.g. the distorion, the mask placement and espicially the rod positions. Symptons of this are e.g. a static offset when trying to hit the ball (whilst detection is good).To fix this one needs to quickly re-run the camera-calibration (not the color-calibration).

Failure in homing

Symptoms: one or more rods fail to reach a central/homed position on the table. However motion during homing is stable and controlled.

Homing is two stage process, first rotational homing takes place after which the lateral direction is homed. Typically failure involves on of the following two cases:

The rod keeps on rotating, stops, and does not finish homing

This is the most common failure, it has to do with the homing sensor. This sensor in the rotational motor frame and detects the passing of a brass insert in the large white sprocket(s). If it succesfully detects this insert passing by, the led on the sensor will light up. If the led does not light up, then the likely cause is that the distance between the insert and the sensor is too large.

This is cause by the fact that there is play in the rotating part of the rod, neccesary to keep the friction down. If we gently pull the rod towards the sensor and restart the homing, the problem will often be solved. You can test this without starting the MOTION executable, all that is needed is to have the amplifier on, by manually rotating the rod past the sensor and checking if the led lights up.

The rod finishes homing, but does not reach a central position

The lateral homing is based on (control) error, as soon as the error builds up above a threshold set in MOTION.mdl it assumes it has reached the side of the table. If it moves towards the middle before actually reaching the side of the table, this threshold needs to be tuned.

If it does high the side of the table but does reach a central position, you can adjusts the lateral position in MOTION.mdl

If the rotational homing does not reach a completely upright position (before moving back slightly), you can adjust this position in MOTION.mdl as well.

Loose sensor cable

Symptoms: puppet slams into the wall or spins out of control during run-time or homing, motion.mat shows encoder output to be zero.

A loose sensor cable will cause a dramatic failure, but will also show a sensor read-out of zero. Securely reconnect the cable and make sure the failure did not damage any other parts of the system (especially the cable).

Missed interrupts

Symptoms: puppet vibrates heaviliy or slams into the wall or spins out of control during run-time or homing, motion.mat shows instability.

Missed interrupts are reported when the MOTION executable finishes, a high number/percentage of interrupts will cause instable behavior. Missed interrupts occur when the MOTION executable fails to hit the real-time deadlines. This can be caused by excessive computational demand in MOTION or failure to set real-time priorities for this executable. Locate the source of error and make sure the failure did not damage any other parts of the system (especially the cable).

Instable Controller

Symptoms: same as missed interrupts, without the report of missed interrupts

This setup is sensitive to wear, which can cause the controllers to become instable. To fix this first make sure the failure did not damage any other parts of the system (especially the cable). If all is well the controllers need to be redesigned, for controller design compile and use MOTION_FRF.mdl, in the tools folder a m-file is provided which can use the data generated to estimate the plant transfer function. During this measurements make sure to use very conservative controllers, read up on the main cstwiki page's documentation to refresh your knowledge.