Skip to content

CNC mills need a touch sensor to measure e.g. the center of a workpiece. This repository hold data on how to build such a sensor and the code to operate it with a WLAN based basestation.

License

Notifications You must be signed in to change notification settings

HeikoKa/Wireless-3D-Touch-Probe-Sensor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wireless 3D Touch Probe Edge Finder for CNC/VMC Machines

See also announcements under Discussions.

Supporters

3D_Touch_Probe.jpg

Description

For CNC machines like VMC (Vertical Machining Center) a regular task is to find the center or an edge of a workpiece as a reference for the following machining. However, this can be extremely annoying to do manually by moving the X, Y and Z axis. Professional machinists use so call 3D Touch Probe or Edge Finder to do this automatically. For hobbyists and semi-professionals these Touch Probes are way too expensive.

There are a lot of examples where people build a DIY 3D Touch Probe, that is basically nothing more than a switch that is connects by a wire to the CNC controller. For machines that make use of an ATC (Automatic Tool Changer) like a carousel this is not suitable, because of the wire from the probe to the CNC controller. In order to make use of a completely automated probing a wireless connection is required. In this project I share my results for a WLAN UDP based 3D Touch Probe consisting of the Probe and a Basestation. While the Probe is working by a recharable battery and a ESP32 microcontroller, the Basestation also hosts a ESP32 microcontroller and is powered by a 5-24V power supply and is connected to the CNC controller to hand over e.g. the current switch state of the 3D Touch Probe. Although the electronics suits best for the provided mechanics, it is basically possible to use the code and the electronics for any 3D-Touch Probe.

The following picture shows the 3D-Touch-Probe in a ATC tool holder BT30. The round connector is the magnetic charging connector for the internal battery. The transparent middle part is used to show serveral states by LEDs, e.g. power on, WLAN connected, touch probe closed/open, battery low, general error etc. The videos in the media area seem not to work online, you might need to download them first. I did not publised all information, because it take a lot of time and I am not sure if there is any interest. So, contact me (h.kalte@gmx.de) and I will answer all you questions.

3D_Touch_Probe.jpg 3D_Touch_Probe.jpg 3D_Touch_Probe.jpg 3D_Touch_Probe.jpg

Sensor Server/Basestation Hardware

Hardware/PCB Revision Features Pictures
Basestation 1.0 (prototype, not available) n/a n/a
Basestation 2.0 (older revision, available and fully functional)
  • Powerfull ESP32-WROOM-32N Microcontroller
  • Sleep input (transistor protected) for CNC to send battery powered Sensor asleep (by UDP message)
  • 3 transistor protected outputs. Each output can be used in “normal” and open collector mode to indicate to the CNC controller: sensor event, Wifi ready, sensor battery low
  • Output mode to CNC controller individually settable by jumpers
  • 6 LEDs for current status: Power On, Wlan Ready, Battery Low, Sleep, Sensor Event, General Error
  • 3 additional GPI/Os of the ESP32 for general purpose features
  • USB connector and USB to UART chip onboard that handles software update and debugging outputs.
  • 2 switches for Reset and Boot
  • External Antenna connector
  • Specifically design to fit in a DIN Rail Terminal Enclosure
  • 2 layer PCB design
  • 5V Power Supply recommended, 12 V not recommended and 24V not possible.
  • Individually solder by me
Basestation 3.0 (available and fully functional)
  • All Features of revision 2.0 plus
  • One additional protected output to the CNC controller (4 in total)
  • LEDs and outputs to CNC are independent (allows switching of the output polarity independently from the LED)
  • 4-layer PCB and improved PCB design to better protect against the rough environment of a CNC mill
  • Better accessibility of the USB port
  • Automatic detection of the hardware revision
  • DC-DC converter to power the hardware up to 24V supply.
  • ESP protection (TVS diode)
  • Fuse to protect the board and the environment
3D_Touch_Probe.jpg
Basestation 4.0 (current Version, available and fully functional)
  • All Features of revision 3.0 plus
  • UART LEDs for TX and RX
  • Removed some resistors and capacitors for simplification
  • Improved DC-DC layout
  • Improved Footprint
  • Improved placement of LEDs and Jumpers
3D_Touch_Probe.jpg
Basestation 5.0 (planning)
  • All Features of revision 4.0 plus
  • Dedicated JTAG PORT
3D_Touch_Probe.jpg3D_Touch_Probe.jpg

Sensor Client Hardware

Hardware/PCB Revision Features Pictures
Sensor 1.0 (older revision, available and fully functional)
  • Highly integrated ESP32-PICO-V3-02
  • Specifically designed power management to ensure longest possible operation and sleep time when powered by battery Lithium polymer battery (LiPo). During sleep everything is switched off except for one pull up resistor.
  • Highly integrated and very small outline 35mm diameter
  • Wake up by simple touch of the sensor mechanic (mechanical switch must be a normally closed switch)
  • DC-DC converter for efficient power management and to handle changing LiPo voltage during operation.
  • LiPo charging IC on board to comfortably charge LiPo by e.g., USB cable.
  • UART connector for Software update and debugging.
  • Charging status is detected by the Microcontroller and can be displayed via LED (can also be send via UDP message to the basestation and webserver)
  • Battery voltage is measured, and low and critical battery voltage can be indicated by LED and send to basestation to inform CNC controller by general purpose input.
  • Connectors for: LiPo battery, Sensor Switch and charging device.
  • Individual sensor debounce capacitor possible
  • RGB LED for status information. Blinking and individual colours are possible, e.g. Power, WLAN initialization, Sensor status, Charging, low and critical battery voltage etc.
  • On board ceramic antenna (in this version no BNC connector for an external antenna)
  • Several additional ESP32 I/O on test points
  • 4-layer PCB design to cope with rough conditions
Sensor 2.0 (revision available and fully functional)
  • Additional BNC connector for external antennas (only necessary in complete closed mechanical designs)
  • Improved battery measurement
  • Improved charging detection
  • Smaller and more robust buttons for Reset and Boot
  • Improved DC-DC Layout
  • Small PCB errors fixed
  • Automatic PCB revision detection
Sensor 3.0 (current revision, available and fully functional)
  • Improved Antenna Design
  • Optional fully automated wakeup and sleep if charger is disconnected and connected (usecase LiPo charger is in tool magazin)
  • 5V charging voltage detection
  • Fix for analog battery voltage measurement
  • Improved DC-DC Layout
  • Small PCB errors fixed
  • Bottom Overlay with more infos
Sensor 4.0 (planning)
  • All Features of revision 3.0 plus
  • Dedicated JTAG PORT
3D_Touch_Probe.jpg3D_Touch_Probe.jpg

Features

  • X, Y and Z detection

  • Wireless communication based on WIFI, especially suitable for automatic toolchanger

  • specifically designe "hardware deep sleep"

  • Client Wake up by:

    • 3D touch action
    • Automatic wake up by disconnecting charging voltage (charger in tool magazin)
  • Client Sleep by:

    • Sleep by CNC controller interaction
    • Sleep if Basestation is not available
    • Sleep by watchdog (not used for a certain time)
    • Sleep by charging connected (charger in tool magazin)
  • Battery voltage monitoring

  • WLAN signal strength monitoring

  • Client and Server alive monitoring

  • Easy UART Debug mode for detailed serial monitor print outs

  • Optional webserver

  • Optional round trip delay measurement

  • Easy recharging of the client battery/Lipo by on board charging chip

  • Many parameters for highly adaptability and wide range of features (see header file)

  • Many more

Authors

Heiko Kalte, h.kalte@gmx.de

Donate

If this project help you reduce time to develop, you can give me a cup of coffee :)

paypal

License

This project is licensed under the GNU General Public License v3.0 License - see the LICENSE.md file for details

About

CNC mills need a touch sensor to measure e.g. the center of a workpiece. This repository hold data on how to build such a sensor and the code to operate it with a WLAN based basestation.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages