HAL -> Arduino Breakout
03 Mar 2013 23:28 - 03 Mar 2013 23:30 #30804
by dewy721
Replied by dewy721 on topic HAL -> Arduino Breakout
Well, your in for an enlightening experience then.
The Arduino platform is opensource, just like LinuxCNC.
There is TONS of get your feet wet stuff on the web, just google or youtube search for Arduino+your interest. Chances are you'll find something.
One such example on youtube show a project just like you described: . Its just a video of a red/green LED back-lit button to toggle LinuCNC's "Machine Power" button within the Axis GUI. In fact, this was one of the videos that got me started making HAL2Arduino, once I saw it was possible.
The Arduino platform is opensource, just like LinuxCNC.
There is TONS of get your feet wet stuff on the web, just google or youtube search for Arduino+your interest. Chances are you'll find something.
One such example on youtube show a project just like you described: . Its just a video of a red/green LED back-lit button to toggle LinuCNC's "Machine Power" button within the Axis GUI. In fact, this was one of the videos that got me started making HAL2Arduino, once I saw it was possible.
Last edit: 03 Mar 2013 23:30 by dewy721.
Please Log in or Create an account to join the conversation.
03 Mar 2013 23:44 #30805
by emcPT
Replied by emcPT on topic HAL -> Arduino Breakout
That is it!
Please Log in or Create an account to join the conversation.
04 Mar 2013 13:43 #30820
by dewy721
Replied by dewy721 on topic HAL -> Arduino Breakout
Although HAL2Arduino provides access to all the HAL pins listed in section "6.1.2 Pins" of the
linuxcnc.org/docs/EMC2_Integrator_Manual.pdf
file, it can also accept plug-in modFiles to enhance its "out of the box" useability.
For those of you that are a little light in coding experience, I could put together a modFile of an 'ideal' CNC control panel template for average users. I just need to know what options are generally considered 'ideal' to have available for most of you out there.
If someone/people would be so kind as to list the buttons they would like access to, then I could put together a modFile to facilitate easy access to any/all of those features.
That way you only need to handle the physical construction of the box and the parts it holds.
In other words, what features make a great control panel?
So far I got:
For those of you that are a little light in coding experience, I could put together a modFile of an 'ideal' CNC control panel template for average users. I just need to know what options are generally considered 'ideal' to have available for most of you out there.
If someone/people would be so kind as to list the buttons they would like access to, then I could put together a modFile to facilitate easy access to any/all of those features.
That way you only need to handle the physical construction of the box and the parts it holds.
In other words, what features make a great control panel?
So far I got:
- E-Stop
- Machine power
- Program start
- Program pause
- Program step
- Program stop
- Feed rate override
- Coolant mist on/off
- Coolant flood on/off
- Spindle controls
Please Log in or Create an account to join the conversation.
04 Mar 2013 16:02 #30821
by emcPT
Replied by emcPT on topic HAL -> Arduino Breakout
Hello.
For me (lathe user) I would have (and since they are so many that is why I was looking for a solution)
1) Directly as possible to linuxcnc (vital buttons):
Emergency stop (in my case directly to mesa card)
PWR ON
PWR OFF
2) Arduino/or other that allow to have a larger range of solutions
Cycle/program start (with back led)
Cycle/program stop (with back led)
Jog X+
Jog X-
Jog Z+
Jog Z-
Fast jog (if you press this simultaneous with any of the jogs it will go at a higher speed)
Feedrate speed (that also controls the jog speed) in increments of 10, from 0% to 150%. This is normally a dial indicator with fixed positions. Only for this I suppose it is needed 4 inputs (2^4 = 16)
Coolant on (with back led)
One or two extra for engaging special auxiliary functions
Now the keyboard, that would be similar to the picture in attachment. Maybe it would be more simple.
I do not know if it is possible to use your HAL2Arduino to simulate keystrokes, like 'A' 'a' 'B' and so on. If it is then for me it would be perfect.
For me (lathe user) I would have (and since they are so many that is why I was looking for a solution)
1) Directly as possible to linuxcnc (vital buttons):
Emergency stop (in my case directly to mesa card)
PWR ON
PWR OFF
2) Arduino/or other that allow to have a larger range of solutions
Cycle/program start (with back led)
Cycle/program stop (with back led)
Jog X+
Jog X-
Jog Z+
Jog Z-
Fast jog (if you press this simultaneous with any of the jogs it will go at a higher speed)
Feedrate speed (that also controls the jog speed) in increments of 10, from 0% to 150%. This is normally a dial indicator with fixed positions. Only for this I suppose it is needed 4 inputs (2^4 = 16)
Coolant on (with back led)
One or two extra for engaging special auxiliary functions
Now the keyboard, that would be similar to the picture in attachment. Maybe it would be more simple.
I do not know if it is possible to use your HAL2Arduino to simulate keystrokes, like 'A' 'a' 'B' and so on. If it is then for me it would be perfect.
Please Log in or Create an account to join the conversation.
04 Mar 2013 17:07 - 04 Mar 2013 17:14 #30823
by dewy721
Replied by dewy721 on topic HAL -> Arduino Breakout
Everything but actual typing out a letter keystrokes it can do, directly.
If your referring to A,B as in selecting stored programs, canned cycles, mode changes. Sure it can do that, either by recording to an SDcard (future modFile).
With some more work on my end, it could even be called from the PC's hard drive directly.
If what you intend is actual machine-side typing as in loading up someFilename.ngc into the Axis GUI then you could do it with a separate arduino that has just been flashed to act a a usb keyboard.
Somebody has figured that out already.
After that, the hardest part would be physically making the control box.
If your referring to A,B as in selecting stored programs, canned cycles, mode changes. Sure it can do that, either by recording to an SDcard (future modFile).
With some more work on my end, it could even be called from the PC's hard drive directly.
If what you intend is actual machine-side typing as in loading up someFilename.ngc into the Axis GUI then you could do it with a separate arduino that has just been flashed to act a a usb keyboard.
Somebody has figured that out already.
After that, the hardest part would be physically making the control box.
Last edit: 04 Mar 2013 17:14 by dewy721. Reason: typos
Please Log in or Create an account to join the conversation.
04 Mar 2013 22:03 - 04 Mar 2013 22:28 #30838
by andypugh
Relying on an Arduino and USB connection for E-stop strikes me as a very bad idea.
E-stop should be hard-wired.
I would also suggest that if you already have Mesa cards then the 7i73 may be a better interface for a control panel than the Arduino is. (It is only slightly more expensive and offers a lot more pins, LCD driver, matrix keyboard support, encoder-counters...)
Replied by andypugh on topic HAL -> Arduino Breakout
Emergency stop (in my case directly to mesa card)
Relying on an Arduino and USB connection for E-stop strikes me as a very bad idea.
E-stop should be hard-wired.
I would also suggest that if you already have Mesa cards then the 7i73 may be a better interface for a control panel than the Arduino is. (It is only slightly more expensive and offers a lot more pins, LCD driver, matrix keyboard support, encoder-counters...)
Last edit: 04 Mar 2013 22:28 by andypugh.
Please Log in or Create an account to join the conversation.
04 Mar 2013 22:19 #30842
by emcPT
That is what I meant:
Emergency stop directly to mesa and the other non vital functions to other hardware.
I did not knew that one (I really do not know a lot of this world). I can have two off those using USB?
There is any example of a matrix keyboard using this hardware, or some user that I can talk to that already implemented this?
Thank you
Replied by emcPT on topic HAL -> Arduino Breakout
Emergency stop (in my case directly to mesa card)
Relying on an Arduino and USB connection for E-stop strikes me as a very bad idea.
E-stop should be hard-wired.
That is what I meant:
Emergency stop directly to mesa and the other non vital functions to other hardware.
I would also suggest that if you already have Mesa cards then the 7i43 may be a better interface for a control panel than the Arduino is. (It is only slightly more expensive and offers a lot more pins, LCD driver, matrix keyboard support, encoder-counters...)
I did not knew that one (I really do not know a lot of this world). I can have two off those using USB?
There is any example of a matrix keyboard using this hardware, or some user that I can talk to that already implemented this?
Thank you
Please Log in or Create an account to join the conversation.
04 Mar 2013 22:31 - 04 Mar 2013 22:31 #30844
by andypugh
I was meaning the Mesa 7i73 smart-serial pendant/control panel interface. The 7i43 is something completely different.
Replied by andypugh on topic HAL -> Arduino Breakout
Sorry. I typed the wrong number (I have edited the original post to save future confusion).
I did not knew that one (I really do not know a lot of this world). I can have two off those using USB?I would also suggest that if you already have Mesa cards then the 7i43 may be a better interface
I was meaning the Mesa 7i73 smart-serial pendant/control panel interface. The 7i43 is something completely different.
Last edit: 04 Mar 2013 22:31 by andypugh.
Please Log in or Create an account to join the conversation.
04 Mar 2013 23:41 #30850
by emcPT
Replied by emcPT on topic HAL -> Arduino Breakout
Well it seams that is a pretty good solution.
The number of IO with the keyboard 8x8 would be ok for me as I do not need MPGs.
It is more expensive, but if it works I prefer to pay more, but ending in a fast direct method.
Do you know if it is possible to:
1) use the 8x8 keyboard to input letters (to edit the gcode for example)
2) If it can be used a SHIFT (so that each key can have a second function)
3) If anyone has done it as far you are aware off. I have afraid off ending in a non exit situation, and I really need examples to get me going.
The number of IO with the keyboard 8x8 would be ok for me as I do not need MPGs.
It is more expensive, but if it works I prefer to pay more, but ending in a fast direct method.
Do you know if it is possible to:
1) use the 8x8 keyboard to input letters (to edit the gcode for example)
2) If it can be used a SHIFT (so that each key can have a second function)
3) If anyone has done it as far you are aware off. I have afraid off ending in a non exit situation, and I really need examples to get me going.
Please Log in or Create an account to join the conversation.
04 Mar 2013 23:42 #30851
by dewy721
Replied by dewy721 on topic HAL -> Arduino Breakout
With the Mesa card, from a glance perspective. Seems like the feature-set is kinda of set in stone. What you get is what you got.
As far as the E-Stop as a safety mechanism, here is some food for thought...
Since HAL2Arduino is extensible it can actually be made to enhance safety in multiple ways such as in closed loop control, based on rules it could:
Add an accelerometer and/mic to the machine housing and it could auto-eStop if ever there's a machine juddering bang!
A $10 IR motion sensor can be equipped too.
It's more of a matter of HOW you decide to implement it.
If its a toy CNC machine where the Arduino itself it used as the motion controller, it will know long before the PC ever will.
However with that said, big iron machines usually come with big iron controllers and those traditionally come with a big-handy off switches.
As far as the E-Stop as a safety mechanism, here is some food for thought...
Since HAL2Arduino is extensible it can actually be made to enhance safety in multiple ways such as in closed loop control, based on rules it could:
- blown encoder=eStop
- excessive current=eStop
- yank the USB plug from the/any Arduino=eStop, (remember, multiple Arduinos are supported.)
- detected motion in a hazard zone=eStop
- hired monkey wandered off=eStop
Add an accelerometer and/mic to the machine housing and it could auto-eStop if ever there's a machine juddering bang!
A $10 IR motion sensor can be equipped too.
It's more of a matter of HOW you decide to implement it.
If its a toy CNC machine where the Arduino itself it used as the motion controller, it will know long before the PC ever will.
However with that said, big iron machines usually come with big iron controllers and those traditionally come with a big-handy off switches.
Please Log in or Create an account to join the conversation.
Time to create page: 0.165 seconds