MechMate CNC Router Forum

Go Back   MechMate CNC Router Forum > The Market Place
Register Options Profile Last 1 | 3 | 7 Days Search Today's Posts Mark Forums Read

Reply
 
Thread Tools
  #31  
Old Wed 05 June 2013, 16:37
MetalHead
Just call me: Mike
 
Columbiana AL
United States of America
I would like to see some shots and comments on this getting integrated into our MM platform. I know some have bought this, so don't be shy !!!

How it gets wired in and configured in Mach would be cool to capture in this thread.
Reply With Quote
  #32  
Old Thu 06 June 2013, 08:39
Richards
Just call me: Mike
 
South Jordan, UT
United States of America
Here's the way that I tested the proximity board with the PMDX-122 breakout board and Mach3:

1. The screenshot of the PMDX-122 manual shows which pins are available for inputs from the proximity board.

2. The screenshot of the schematic shows the output signal pins on the proximity board.

3. The screenshot of the Arduino sketch file shows that output # 5 is normally used as a "combined" signal output.

4. The screenshot of Mach3's configuration screen shows one way to configure a single input to act as the limit sensor input for all active axes.

5. The diagnostic screenshot of a non-active sensor shows that the input is not seeing a proximity limit condition.

6. The diagnostic screenshot of an active sensor shows that the input is seeing a proximity limit condition. (Note the message by the RESET button shows that an emergency stop has taken place.)

Just connect PMDX-122 J5-GND proximity board TB-4-3 (GND) and PMDX-122 J5-Pin 11 to proximity board TB-4-2 (combined sensor output) and you're good to go. (The full schematic shows that TB-4-2 is connected to the ATmega328 Pin 2 (PD0) which is the Arduino Pin 0. The sketch assigns Pin 0 to be the combined signal pin. That pin is normally HIGH until any one of the sensors goes active, then that pin is LOW.
Attached Images
File Type: jpg pmdx_2.jpg (60.8 KB, 173 views)
File Type: jpg sch_2.jpg (36.7 KB, 175 views)
File Type: jpg arduino_2.jpg (20.3 KB, 175 views)
File Type: jpg config_2.jpg (79.7 KB, 173 views)
File Type: jpg no_stop_2.jpg (80.4 KB, 173 views)
File Type: jpg limit_2.jpg (80.7 KB, 172 views)

Last edited by Richards; Thu 06 June 2013 at 08:58..
Reply With Quote
  #33  
Old Thu 06 June 2013, 09:15
Richards
Just call me: Mike
 
South Jordan, UT
United States of America
I should point out that the PMDX-122 has four input pins available. If you're not using those pins for anything else, you could connect each axis from the proximity board to an input pin on the PMDX-122. The proximity board outputs a signal from each axis and a combined signal from all axes.

On my Shopbot PRT-Alpha, I just used one input to the controller card for all proximity sensors. My zeroing routine moved one axis at a time, so when a proximity sensor went "active", the program automatically knew which axis was "zeroed". When I was cutting, if any sensor went "active", the machine immediately shut down.
Reply With Quote
  #34  
Old Thu 06 June 2013, 15:23
Richards
Just call me: Mike
 
South Jordan, UT
United States of America
Thoughts come, but not all at once.

What problem are we trying to solve with proximity sensors? Don't we want to know when a limit has been reached and then stop the machine from going past that limit? Isn't that the basic premise?

How do we do that?

That depends. Gerald's idea was that a sensor should we "fail safe". That means that if the sensor fails, the system should detect that failure. If the sensor was defective, the system should detect that failure. If the machine was already in an "unsafe" condition, the system should detect that condition. It also means that if a limit had been reached, that the limit should be detected.

He had a good idea.

The system used by Shopbot only detected if the limit had been reached and it depended on the unproven fact that the sensor would always be working. Those of us who used Shopbots would normally check the sensors everyday before moving an axis by placing a piece of metal close enough to the sensor to see if the sensor was working.

Gerald's solution did not require anyone to do anything. Those using his system knew that if the sensor did not sense a metal "rail" or other stationary piece of metal, that the system would do an emergency stop and not allow the axis to be moved. His system also detects those times when the gantry lifts enough that the sensor no longer "saw" the rail. Only when the sensor "sees" a hole in the metal would the sensor activate.

It's a good system. It is as foolproof as any low cost system can be. It doesn't require sophisticated electronics to make it work.

The only flaw in that system is that either you have to have one dedicated input for each sensor, or you have to have some kind of external electronic circuitry to handle multiple sensors. It's the old "AND" vs "OR" logic problem.

Some people have used relays. Relays are dependable. Relays are relatively cheap to buy. But, relays are slow. A relay takes from 10mS to 30mS to activate. That's not very long, but if your axis is at "end of travel", that may be long enough to cause damage. On the other hand, solid state electronics can work much faster. A typical proximity sensor can see up to 1,000 transitions per second. That's pretty fast. An axis doesn't move very far in 1/1000th of a second. Being able to read a sensor faster than that doesn't serve any purpose. The "signal" will be lost between "loops". Reading the signal ten times slower or thirty times slower can be a problem, depending on how fast the axis is traveling and how sturdy your machine has been built.

The answer to the problem is using a non-relay solution that works at about the same speed as the sensors and gives the reliability of relays. That's what my board does. That's what other boards may do. (Sorry, but I haven't done any kind of Google search to see who else makes a low-cost proximity board.)

Making a "home-made" CNC machine has a lot of tradeoffs. Cost is always important. Safety should never be compromised. Whether you decide to use limit sensors or not is something that each builder will have to decide. Whether you decide to use a N/C system (Gerald's) or a N/O system (Shopbot's) is up to you. Whether you decide to use relays or solid-state electronics is also up to you. You are the designer. How your machine runs and what it can do is totally up to you.

Because there is not a list of "options" that you can order from a single supplier, your choice is more difficult than going to McDonalds and ordering a lunch, but those who understand what they are building and those who do the math to see what happens if something goes wrong are most likely going to try to find a solution that keeps the improbable from happening.

That "attitude" applies to all aspects of building the machine, not just to the limit sensors. You can cut costs to the bone or you can build a safe machine. How much you cut and where you cut is entirely up to you.
Reply With Quote
Reply

Register Options Profile Last 1 | 3 | 7 Days Search Today's Posts Mark Forums Read

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Using an Arduino to solve common interface problems Richards 70. Control Systems 14 Wed 14 December 2011 20:08
Proximity Sensor Boards zigmart The Market Place 7 Sun 19 June 2011 19:42
Techlf CPU4BU (France) - USB interface Gerald_D 70. Control Systems 5 Thu 04 March 2010 22:16
Touch Panels & Interface Design ozanblotter The Market Place 3 Fri 23 May 2008 00:23


All times are GMT -6. The time now is 10:51.


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.