Getting started

Connecting home sensors

17min

This information is meant for the and may not be accurate when using another controller. Please check the documentation pages for your specific controller.

Home sensors are responsible for providing the machine with a reference for its position. After shutdowns, step loss, and manual movements the machine will be able to find its original position.

Home sensors and Limit sensors are not the same. The difference may seem semantic, but in reality, this means that the machine will need to be able to move slightly past the trigger point of the switch. This is to ensure that the machine can decelerate after the switch is triggered. This distance is determined by the homing speed and the machine's acceleration (deceleration) settings. Additionally, the home switch position may not be near the axis's limit at all.

The home sensor types supported by the are NPN both in normally open (NO) and normally closed (NC) configurations. The method of detection is irrelevant to the and can be chosen based on the machine's specifics, these include physical switches, inductive switches, capacitive switches, etc. The is designed to sink around 10mA into the sensor when it is active/closed. The threshold voltage for a low or closed signal is typically 1.3V for revision 13 and up and 0.6V for revision 12 and lower. All home sensors must be of the same polarity (all NO or all NC).

Wiring

NPN


Document image


Switch


Document image


Configuration

Homing an axis works the same for most axis types except for master-slave setups. Using master-slave axes with auto-gantry squaring requires additional setup steps outlined in Tandem axes that cannot be skipped.

With all sensors wired, start the software with the machine connected. Open the setup tab, navigate to Machine General, and scroll to the homing section.

Document image


If the type of switches is known, the setting must be set to "Falling edge" for NO sensors and "Rising edge" for NC sensors.

Document image


If the type of switches is not known, the polarity of the switches can be determined automatically. Jog the machine to a position where none of the switches are triggered. Press "Auto detect polarity" and "Ok" to use the current values of the home inputs as inactive.

Document image


If the state of all home inputs is not equal, an error will be displayed. This can happen because either the sensor types are not equal or some inputs are triggered while others are not.

Document image


When all home inputs have been wired together to the first home input, the "Use home input for X axis as home input for all axes" option must be checked.

Document image


Using this option in combination with tandem axes is not supported because with both motors running simultaneously, it is impossible to know which sensor was triggered.

Next, scroll to the Motors section.

Document image


All homing options here can be configured on a per-axis basis.

These configuration steps assume that the Maximum velocity and Maximum acceleration have already correctly been set. Both these settings may influence the homing procedure and changing them later may induce changes to the homing sequence.

By default, the Homing velocity is set to 0, in this case, Manual appears in the setup for that axis. Executing a home command for this axis results in the current position being set as 0. Entering a non-zero positive value ensures a proper home movement will be executed.

Having a high homing velocity results in a faster homing sequence, but also increases the distance the axis moves past the trigger point of the sensor. When the sensor triggers during the homing procedure, the axis will decelerate according to the value entered in Maximum acceleration. The distance covered is a result of acceleration, Homing velocity, and fifoTime. Typical values are around 10mm/s.

The precise/safe homing velocity is the velocity at which the machine is moved out of the sensor's triggered area. Typical values here are roughly 10% of the homing velocity, the point at which the sensor untriggers is the point that is used for the home position. Any inaccuracies caused by the first faster movement are therefore not translated into an inaccurate home position.

Lastly, the home position does not have to be at the point where the sensor triggers. An offset can be applied to decouple the sensor position from the home position. The value entered here is the position of the trigger point relative to the home position.

Tandem axes

All the above settings also pertain to tandem axes, however, some additional settings are needed.

Changes to the macro have to be made to home axes used in a tandem configuration. A tandem configuration contains two axes, one master and one slave axis. The master axis is the axis that can be actively controlled, the slave follows the position programmed to the master.

In this example, the Y axis forms a tandem pair with the A axis. The Y is the master, which the A axis follows as the slave. In the macro, both of the homing macros need to be changed.

On the Operate tab of the software, click "macro", and subsequently "Edit file".

Document image


In the editor, change the home_y and home_a subroutines as follows:

Sub home_y HomeTandem y Endsub
Sub home_a ;Home a Endsub

This starts tandem homing as soon as the Y axis is homed and does not re-home the A axis separately.

When pressing home all, each axis is homed sequentially, the default sequence is Z, Y, X, A, B, C. If the machine needs a different order, this can be changed in the macro as well by changing the order of the lines in home_all

sub home_all gosub home_z gosub home_y gosub home_x gosub home_a gosub home_b gosub home_c msg "Home complete" endsub

Save the file and close the editor. Press "Reload file" to load the changes into the software.

Document image


In the setup navigate to Machine general and scroll to the Motors section. On the Slave mode setting for axis A select "Slave to Y axis".

Document image


The home position settings in both the master and slave are used for squaring. If after homing, the machine is not square, this can be compensated by modifying one of these.

Setting the maximum distance between the master and slave after homing to a low enough value is crucial. Both axes move simultaneously during every step of the homing procedure except the last movement. This last movement moves the slave axis to the position of the master. This is the actual squaring movement.

Document image


If the difference between these axes is too high, the machine may be too rigid to perform this movement. Most machines may only be able to independently move between 1 mm and 20 mm before binding or damage occurs. The more rigid the machine, the smaller this distance should be. If a large difference is found after homing, this likely indicates that the homing procedure failed.

Testing

Ensure that none of the sensors are currently triggered.

Open the IO tab and find the home inputs. Their state is indicated by the color of the circle next to the input. Check that the color of the switches in the non-triggered state is the same and matches the setting for Home inputs trigger edge. If the settings was set to Falling edge, all indicators must be on, if Rising edge was set, the indicators must be off.

Document image

Document image


Manually activate the home sensor for each axis and check if the state of the input changes. If the switch does not trigger, check the Wiring steps. If the wiring is correct, check that the sensor actually triggers, some sensors have an LED indicator to show the output.

Keep close proximity to an E-stop switch and start the homing procedure for each axis separately by going to the home menu and pressing the home button for the accompanying axis. Keep in mind that usually, the order of homing operations is important to avoid collisions.

Document image

Document image


The first thing to watch out for is the direction the machine homes in. If this is incorrect, stop the machine using either the E-stop or by pressing reset. If the homing direction is incorrect, see if the messages show "Home sensor active, starting with second move". This means that the Homing inputs trigger edge setting was set wrong.

Once the machine moves in the correct direction when homing, Let the machine home completely. Keep close proximity to the E-stop switch, if the machine moves past the homing sensor without stopping, abort using the E-stop switch or the reset button.

If the machine homes correctly, the axis will have moved to the direction of the home sensor, upon triggering it will decelerate and move back out of the sensor. After the sensor un-triggers, the machine will again delecerate and come to a standstill. The axis is now homed. Repeat this step for each axis. After all axes are tested separately, press home_all to verify the order of the homing operations.

Document image