Safety Request: Snapmaker Safety Trip Controls

Hi all,

I recently received my Snapmaker 2 this past Friday and I was excited to test it out. I was running the CNC module on 1/4" plywood which was slightly warped. While going through one of the warped sections, the end mill got caught in the work piece. I hit stop on the screen, but as I’ve read that only stops the current process in G-Code and not immediately. I had to frantically fumble around the back of the power supply to shut off the machine.

The common safety practice in industry for systems such as turbines, boilers, motors, etc. is to have machine safeguards in the event that something goes wrong. Safety trip controls allow for a quick means of stopping the machine in an emergency situation. Ideally this would be a hardwired trip circuit with redundant relays that are de-energized in the event of a trip, but this can be done in logic.

Trips in logic are giant OR gates and in the event one of the inputs to the OR gate become TRUE, a trip is initiated. I don’t know if there is current sensing in the Snapmaker controller for the motors, but if there is this would be a great to use for safety trips.

For Example:
Let’s say for example we have a trip setpoint for current for all the motors is 2A and there is a Safety Relay which has the motor power on each of the contacts.

The Safety Relay is Tripped(De-Energized) when the following happens:

  • If (Linear_Motor_X_Current > 2A for 2 seconds) OR (Linear_Motor_Y_Current > 2A for 2 seconds) OR (Linear_Motor_Z_Current > 2A for 2 seconds) OR (CNC_Spindle_Motor_Current > 2A for 2 seconds) OR HMI_E-STOP_Pressed OR Hardwired_E-Stop_Pressed THEN DE-Energize Safety Relay

The permissives to reset(Energize) the Safety Relay is when:

  • IF (Operator clicks the HMI_Reset_Button) AND no Trips are Active THEN Energize Safety Relay

When the safety relay is energized, the relay contacts are closed which power is provided to the individual motors. When the safety relay is de-energized the relay contacts are open and power would be lost to each of the motors.

When a trip occurs, users should receive a notification on screen known as a “First-Out” which shows what caused the unit to trip. Upon reviewing the situation and the user has deemed everything safe for operation and there are no trips active, the user should be able to reset the relay.

Upon resetting relay everything is energized, but the work does not resume until the operator clicks “Resume Work”. After a trip the user can manually or automatically move the toolhead to the last recorded location of the trip manually and then click resume work if everything is okay.

Not only would safety controls protect the machine from damage, but it would also protect the people using it. Like I said this can be accomplished in logic, if a trip occurs all the current process can be exited and all motor actions stopped. Snapmaker Devs, please consider adding safety features such as this.

Thank you,

Lance

3 Likes

There is a shut off button coming out soon.

The kickstarter backers have been invited to purchase it along with the rotary module.

1 Like

Shutoff button is definitely a must have, I’ll look into it.

I would still like to see some machine safeguards hopefully. It would be nice to also have user setpoints for safety trips when working with different materials and the option to bypass safety limits if the user is watching the work.

I wouldn’t expect them to do much more than the button. They don’t particularly care.

That’s unfortunate. If I have time in the future I might look into doing something myself with a hardwired trip circuit. If the firmware is open source I might look into putting some safety controls in.

Some of the firmware is, some of it isnt.

They are supposedly going to keep opening it up more for everything eventually though

In the meantime you can add a switch inline on the power cord:

If you really want to you can pick up a cool looking switch on Amazon for ~$10:

-S

1 Like