Tag Archives: stop

Probotix Comet CNC Startup and Shutdown

These are my notes on starting and stopping the Probotix Fireball Comet CNC mill.

Danger

I’m not kidding about danger. There is one cardinal rule.

The motor control box must never have power without the AXIS control software running.

The AXIS control software (the Comet icon on the desktop) must and I repeat must be running before power is applied to the stepper motor control box, and must remain running as long as power is applied to the stepper motor control box.

Why This Is Important

The motor control box translates signals from the computer’s parallel port into motion and spindle control. The AXIS software controls the signals to the parallel port. If the motor control box is powered on before the AXIS software is running, or the AXIS software is exited before the motor control box has been powered off, then the parallel port and thus the motor control box will be thrown into an unknown, unpredictable, and uncontrolled state and the mill can start operating by itself.

Think about how dangerous this is:

  1. The spindle can start without warning and the red emergency stop button will not be operable. (I had this happen to me.)
  2. The motors can start moving  without warning and the red emergency stop button will not be operable. These motors are powerful and can crush fingers.

A powerful uncontrolled robotic cutting tool is not something to leave to chance.

Steps

Now that I’ve beat that horse to death, here are the steps to safely start up and shut down a Comet:

Start Up

  1. Start the computer
  2. Double click on the Comet program icon and leave it running.
  3. Power on the controller box.
  4. Ensure the emergency stop button on the machine is out (off). Twist the knob to reset it.
  5. Turn on the (virtual) machine power on. Push F2 or click on the orange power button icon on the top tool bar of the AXIS software.
  6. Use Home All button to put the CNC into a known state.
  7. Use the machine to make all manner of wonderful creations.

Shut Down

  1. Turn off the controller box.
  2. Exit the AXIS (Comet) program. You can use the X in the upper right-hand corner.
  3. Turn off the computer. In the top right hand corner of the screen there is a power symbol. Click on this to bring up the menu and select Shut Down….

Restarting LinuxCNC

If you ever need to restart LinuxCNC power off the stepper motor controller box first. The motor control box must never have power without LinuxCNC running. (Did you think that I was done beating that horse?)

I have had problems having LinuxCNC crash when trying to restart it. If this happens, reboot the computer. There is a power symbol in the top right corner of the screen. Click on this to bring up the menus and select Restart….

 

Controlling RHEL 7 Services

One change from RHEL/CentOS 6 to the RHEL 7 beta is how services are controlled. The old service and chkconfig commands are replaced with systemctl. These are my quick and dirty notes compiled from the Fedora Project systemd and SysVinit to Systemd Cheatsheet pages.

Basic Control

The old system command’s replacement is very similar, with services having .service appended:

[bash]
systemctl start|stop|restart|status name.service
[/bash]

For example:

[bash]
systemctl restart httpd.service
[/bash]

Service Boot time Control

To get a list of available services and their boot time status:

[bash]
systemctl list-unit-files –type=service
[/bash]

To set a service to start (or not) at boot time:

[bash]
systemctl enable|disable <em>service</em>.service
[/bash]

For example:

[bash]
systemctl enable mariadb.service
systemctl enable httpd.service
[/bash]

Run Levels

Run levels are called targets, have been simplified, and have names now. An incomplete list:

  1. poweroff.target (run level 0)
  2. rescue.target (single-user mode; run level 1)
  3. multi-user.target (normal run level 3)
  4. graphical.target (normal run level 5)

To set the default run level:

[bash]
systemctl set-default multi-user.target
[/bash]

To change the run level:

[bash]
systemctl isolate name.target
[/bash]

For example, to enter single user mode:

[bash]
systemctl isolate rescue.target
[/bash]

And the appropriate services will be stopped and started.

Additional Reading

  • A description of how systemd fits into the boot process here.
  • Another nice summary here.

Updates

2014-07-17
Updated setting the default run level per CertDepot’s suggestion. Added the “Additional Reading” section.