Richauto A18

Here's the place for discussion related to CAM/CNC and the development of the Path module.
neowalla
Posts: 11
Joined: Sun Jan 19, 2020 11:59 am

Richauto A18

Postby neowalla » Sun Jan 19, 2020 12:12 pm

Hi everyone, I am planning on replacing my Richauto A18 controller with a Mesa 7i76e, which should work well with FreeCAD CAM, but in the meantime, is there a post processor in FreeCAD that works with Richauto controllers?
chrisb
Posts: 22362
Joined: Tue Mar 17, 2015 9:14 am

Re: Richauto A18

Postby chrisb » Sun Jan 19, 2020 12:24 pm

Can you post more details about the GCodes used?
neowalla
Posts: 11
Joined: Sun Jan 19, 2020 11:59 am

Re: Richauto A18

Postby neowalla » Sun Jan 19, 2020 12:30 pm

I have the post processor for Vectric Vcarve that I got from my sales rep at Omni where I bought the machine. I don't know if looking at the code will help?I am posting the text of the processor below:
Note: I'm not sure why there are strike-throughs on the lower section. They do not appear in the text editor. maybe an HTML thing from pasting it in this window.
+================================================
+
+ Mach2/3 - Vectric machine output configuration file
+ Wraps X values around the Y axis, values are output as A
+ Although X values wrapped around the Y axis would conventionally be
+ output as 'B' Moves; the current versions of Mach3 will not display
+ B axis moves as rotary moves.
+ So many users configure the rotary axis as an A axis, regardless of the
+ actual orientation of the axis.
+ This post processor is suitable for Aspire =>2.1 / VCarve Pro =>5.1
+
+================================================
+
+ History
+
+ Who When What
+ ======== =========== ===========================
+ Mark 06/05/2009 Written
+ Mark 30/11/2009 Added TOOLPATHS_OUTPUT.
+ Brian 15/12/2009 Remove M05 from NEW_SEGMENT
+================================================

POST_NAME = "DSP_X2A_mm(*.NC)"

FILE_EXTENSION = "NC"

UNITS = "MM"

DIRECT_OUTPUT = "Mach|Mach4.Document"

ROTARY_WRAP_X = "A"

+------------------------------------------------
+ Line terminating characters
+------------------------------------------------

LINE_ENDING = "[13][10]"

+------------------------------------------------
+ Block numbering
+------------------------------------------------

LINE_NUMBER_START = 0
LINE_NUMBER_INCREMENT = 10
LINE_NUMBER_MAXIMUM = 999999

+================================================
+
+ Formating for variables
+
+================================================

VAR LINE_NUMBER = [N|A|N|1.0]
VAR SPINDLE_SPEED = [S|A|S|1.0]
VAR FEED_RATE = [F|C|F|1.1]
VAR X_POSITION = [X|A|X|1.3]
VAR Y_POSITION = [Y|A|Y|1.3]
VAR Z_POSITION = [Z|A|Z|1.3]
VAR X_HOME_POSITION = [XH|A|X|1.3]
VAR Y_HOME_POSITION = [YH|A|Y|1.3]
VAR Z_HOME_POSITION = [ZH|A|Z|1.3]
VAR SAFE_Z_HEIGHT = [SAFEZ|A|Z|1.3]
VAR WRAP_DIAMETER = [WRAP_DIA|A||1.3]

+================================================
+
+ Block definitions for toolpath output
+
+================================================

+---------------------------------------------------
+ Commands output at the start of the file
+---------------------------------------------------

begin HEADER

"( [TP_FILENAME] )"
"( File created: [DATE] - [TIME])"
"( Material Size)"
"( X= [XLENGTH], Z= [ZLENGTH])"
"( Diameter = [WRAP_DIA] mm)"
"( X Values are wrapped around the Y axis )"
"( X Values are output as C )"
"(Tools used in this file: )"
"([TOOLS_USED])"
"[N] G00G17G90G40G49G80"
"[N] ([TOOLNAME])"
"[N] M03"
"[N] [YH] [XH] [ZH] [F]"

+---------------------------------------------------
+ Commands output for rapid moves
+---------------------------------------------------

begin RAPID_MOVE

"[N] G00 [X] [Y] [Z]"


+---------------------------------------------------
+ Commands output for the first feed rate move
+---------------------------------------------------

begin FIRST_FEED_MOVE

"[N] G1 [X] [Y] [Z] [F]"


+---------------------------------------------------
+ Commands output for feed rate moves
+---------------------------------------------------

begin FEED_MOVE

"[N] G1 [X] [Y] [Z]"


+---------------------------------------------------
+ Commands output at toolchange
+---------------------------------------------------

begin TOOLCHANGE

"[N] ([TOOLNAME])"
"[N] M03"
"[N] G90G54"



+---------------------------------------------------
+ Commands output for a new segment - toolpath
+ with same toolnumber but maybe different feedrates
+---------------------------------------------------

begin NEW_SEGMENT

"[N] M03"

+---------------------------------------------------
+ Commands output at the end of the file
+---------------------------------------------------

begin FOOTER

"[N] G00 [ZH]"
"[N] M05"
"[N] M30"
%
chrisb
Posts: 22362
Joined: Tue Mar 17, 2015 9:14 am

Re: Richauto A18

Postby chrisb » Sun Jan 19, 2020 1:07 pm

I'm afraid this doesn't help at all, because we don't know the input. Nevertheless you should edit your post and enclose the code with code tags (use </>-Button).

What I would like to see is the GCode loaded on your machine for something like this. (0,0) is at the left lower corner.
Attachments
Snip macro screenshot-fac536.png
Snip macro screenshot-fac536.png (5.13 KiB) Viewed 520 times
neowalla
Posts: 11
Joined: Sun Jan 19, 2020 11:59 am

Re: Richauto A18

Postby neowalla » Sun Jan 19, 2020 3:29 pm

Ok, I'm not sure how to get that. I'm new to all of this so I have to learn as I go. I'm still trying to decipher the wiring diagrams between the Mesa and Richauto controllers. If I could get that done the post processor will be a moot point, but I don't know how long that will take.
The Richauto controllers are pendants so there is no attached computer per se. Is what you're asking about something that I can pull from Vcarve?
User avatar
sliptonic
Posts: 1682
Joined: Tue Oct 25, 2011 10:46 pm

Re: Richauto A18

Postby sliptonic » Sun Jan 19, 2020 8:15 pm

What's your reason for replacing the Richauto? FreeCAD should be able to generate gcode for it with a custom post-processor.

If you replace the Richauto with a mesa card, what will you use for control software? LinuxCNC? Mach?

The default post-processor in FreeCAD is for LinuxCNC and works well but, like I said, it should be able to generate for any control with a custom post.
neowalla
Posts: 11
Joined: Sun Jan 19, 2020 11:59 am

Re: Richauto A18

Postby neowalla » Mon Jan 20, 2020 1:14 am

Hi sliptonic, I want to replace the Richauto controller because I don't really like it. I would feel more comfortable controlling my CNC with a computer running LinuxCNC. I find with the pendant I don't really know what is going on once I execute the job. I also can't seem to change feeds/speeds. Regardless of what i set the spindle speed, and the feed rate in Vectric, the Richauto disregards that code and runs at the same speed and feed rate.
Until I get the Mesa card installed and up and running, I would love to find a custom FreeCAD post-processor for the Richauto, but where?
User avatar
sliptonic
Posts: 1682
Joined: Tue Oct 25, 2011 10:46 pm

Re: Richauto A18

Postby sliptonic » Mon Jan 20, 2020 6:09 am

Well "custom" means you'd have to write it but don't despair. It's likely a lot easier than you think. The richauto probably takes a standard gcode syntax.

So the process is what Chrisb was getting at: Do a simple design in vectric - just a rectangular shape with a curved corner or two. Use round dimensions like 100mm on a side. Export the gcode.

Do the same design in freecad and export gcode using the linuxcnc.

Compare them and understand what's different. It's probably not very much. Maybe the richauto wants line numbers in a special format or maybe it needs the file terminated in a certain way. It might be anything or nothing.

When we know that, it's easy to make a custom post. If you can upload the two gcode files here, we can help.
m0n5t3r
Posts: 97
Joined: Fri Feb 03, 2017 2:55 pm

Re: Richauto A18

Postby m0n5t3r » Mon Jan 20, 2020 9:53 am

I have no idea how vectric works (I'm one of those people who insist on running as much free software as possible), and I have limited experience with GCode dialects, but
neowalla wrote:
Sun Jan 19, 2020 12:30 pm

Code: Select all

+---------------------------------------------------
+  Commands output at toolchange
+---------------------------------------------------

begin TOOLCHANGE

"[N] ([TOOLNAME])"
"[N] [S] M03"
"[N] G90G54"



+---------------------------------------------------
+  Commands output for a new segment - toolpath
+  with same toolnumber but maybe different feedrates
+---------------------------------------------------

begin NEW_SEGMENT

"[N] [S]M03"

Code: Select all

[S]
appears to be the speed, so

Code: Select all

[S]M03
looks ... wrong; Gcode to set spindle speed usually looks like

Code: Select all

M[0]3 S<speed>


Same for reverse direction / M4; this could explain why your spindle speeds don't apply, the interpreter ignores garbage at the start of the line and just sees M3, so it starts the spindle at whatever default speed it has defined.

The rest looks like reasonably standard stuff (line numbers in front, lines ending with \r\n, standard-ish preamble / postamble. As others suggested, we'd need to see a bit of output to say more.

I'd venture to say the Linuxcnc or the GRBL postprocessors might work out of the box for this (you'd need to check how a drill cycle is supposed to look, I'm not aware of other fancy stuff Path might output)

edit: http://www.richnc.com.cn/attach?id=917&down=1 on page 68 has a list of accepted gcode; I remembered that F<speed> works standalone, so probably S<speed> should work standalone as well (on its own line, or on the same line before the M03 command), and vectric is supposed to put an S before the value, but again, you need to get some output from it...
chrisb
Posts: 22362
Joined: Tue Mar 17, 2015 9:14 am

Re: Richauto A18

Postby chrisb » Mon Jan 20, 2020 1:09 pm

The code given above by neowalla does not seem to be a GCode file for his machine; it looks rather like a template/configuration file for a post processor.

What I would like to see is a very simple file which you can load on your machine. It should contain a straight move and an arc. The arc must not be centered around (0,0), because there are different wqys to specify the center.

We could then see
- How does a header looks like
- How does a standard movement line looks like
- How are arcs defined
- How does a footer looks like

That be more than enough to get you going. More can be done later.

So go out and look for a simple GCode file or for someone who can make one for you. There may even be some demo files delivered with the machine.