What's new
What's new

Fanuc 0MD+ HSM Edit: correct RS232 parameters? Alarm 085

Jrill

Aluminum
Joined
Feb 11, 2013
Location
Northeast USA
What parameters do you use to send programs to a Fanuc 0MD?

I made a new null modem cable that reaches all the way to the office.

I'm trying to use Autodesk/CIMCO HSM Edit (comes with the free Inventor HSM and works fine for transferring to our Fadal), previously I used an early 90s smartcam program on a 486, and I tried to port most of the settings over but some of them aren't worded the same way, so I'm not sure if I'm missing something or not.

So far the best I've gotten is alarm 085. I think I changed some settings and got no alarm but only 3-4 lines of code in the control before the PC perpetually pauses transfer.

Here's the alarm 085 setup I have currently:

stop bits = 2
parity = even
baud rate = 9600 (control set for this)
data bits = 7
flow control = software
DTR disabled
RTS disabled
XOn character = \17
XOff character = \19
CR/LF = \13 \10

No idea what the last 5 of those do

What's probably going wrong here?
 
What parameters do you use to send programs to a Fanuc 0MD?

I made a new null modem cable that reaches all the way to the office.

I'm trying to use Autodesk/CIMCO HSM Edit (comes with the free Inventor HSM and works fine for transferring to our Fadal), previously I used an early 90s smartcam program on a 486, and I tried to port most of the settings over but some of them aren't worded the same way, so I'm not sure if I'm missing something or not.

So far the best I've gotten is alarm 085. I think I changed some settings and got no alarm but only 3-4 lines of code in the control before the PC perpetually pauses transfer.

Here's the alarm 085 setup I have currently:

stop bits = 2
parity = even
baud rate = 9600 (control set for this)
data bits = 7
flow control = software
DTR disabled
RTS disabled
XOn character = \17
XOff character = \19
CR/LF = \13 \10

No idea what the last 5 of those do

What's probably going wrong here?

Hello Jrill,
PS/85 alarm points to a mismatch between the RS232 protocol settings (those shown above) setting of your PC Software and those set via control parameters. Ensure that Stop Bits and Baud Rate are set the same for the two devices.

Regards,

Bill
 
Not sure what everything means, but by default (not using it at current place) my cimcoedit has DTR and RTS enabled. I would vote with Bill above, most likely your settings aren't the same between machine and pc.
 
I’ve been interested to see how this feature works with inventor. Looking forward to see if someone’s tried, but I have no experience myself.

It works very well! I've used it to transfer every program to our Fadal over the past 1-2 years (also works for the Fanuc now that I changed stop bits to 1). You just post the program in Inventor HSM and it opens up in HSM Edit automatically, you choose the correct com port profile (set it and save it as a machine name for future use) and send the program once the machine is ready to receive. Also has a lot of good NC code edit features like line renumbering, translate/rotate, file compare, and backplotting/simulation to show you what your code is doing.

I use a usb-DB9 adapter to plug into the PC (I bought two but only one works correctly - I think it's hit or miss for machine tools depending on the manufacturer's design) and then I made a DB9-DB25 cable based on the pin in/out I read on this site, and copying an existing cable we already had.
 
Hello Jrill,
PS/85 alarm points to a mismatch between the RS232 protocol settings (those shown above) setting of your PC Software and those set via control parameters. Ensure that Stop Bits and Baud Rate are set the same for the two devices.

Regards,

Bill

Not sure what everything means, but by default (not using it at current place) my cimcoedit has DTR and RTS enabled. I would vote with Bill above, most likely your settings aren't the same between machine and pc.

Thanks - I changed Stop Bits to 1 this morning and now it works perfectly. Odd since the other computer we use to transmit uses 2 stop bits. Just glad it works.

For future reference, if this helps anyone else, settings that worked for my fanuc/parameters:

stop bits = 1
parity = even
baud rate = 9600 (control set for this)
data bits = 7
flow control = software
DTR disabled
RTS disabled
XOn character = \17 (default)
XOff character = \19 (default)
CR/LF = \13 \10 (default)
 
XOn and XOff is the flow control to keep the buffer from overflowing but since you have it working you probably don;t care. :-)
Good job anyway. DB9's are SO much fun to solder. :-)
 
Thanks - I changed Stop Bits to 1 this morning and now it works perfectly. Odd since the other computer we use to transmit uses 2 stop bits. Just glad it works.

For future reference, if this helps anyone else, settings that worked for my fanuc/parameters:

stop bits = 1
parity = even
baud rate = 9600 (control set for this)
data bits = 7
flow control = software
DTR disabled
RTS disabled
XOn character = \17 (default)
XOff character = \19 (default)
CR/LF = \13 \10 (default)

Hello Jrill,
You will find that the parameters of the machine control are set for 1 Stop Bit. Stop Bits aren't actual Bits per se, but Bits worth of time and the time period changes with the Baud Rate. For example, 1 Stop Bit at 9600 Baud Rate will equal 1/9600th of a second, or 0.000104167 seconds. Start and Stop Bits are used for synchronization. When Start and Stop Bit Setting of the two connected devices don't match, a Framing Error normally results (but not always). PS/85 refers to a Framing Error.

From your first post and your statement of not knowing what the last five items from the list above meant, the following may explain:

DTR and RTS are Hardware Hand Shaking lines in an RS232 connection. The Handshaking occurs by the voltage on these lines being varied.

DTR means Data Terminal Ready and indicates that the connected device is ready to receive data. DTR is used to indicate the presence of some equipment, and RTS (Ready To Send) is one half of hardware flow control and is used with CTS (Clear To Send) to start and stop communication.

Xon and Xoff are Software Hand Shaking Characters. The numbers shown along side above are the ASCII Character Set Numbers for DC1 and DC3, ASCII 17 and 19 respectively.

Similarly, the numbers 10 and 13 above are the ASCII Character Set Numbers for Line Feed (LF)and Carriage Return (CR) and usually refer to the Characters that terminate a Block.

Regards,

Bill
 
Hello Jrill,

From your first post and your statement of not knowing what the last five items from the list above meant, the following may explain:

I appreciate the explanation. I knew someone on practicalmachinist would know. I wonder how much longer it'll take before this kind of info is lost. I'm relatively young and it seems like it's going to be rare knowledge in a few years.
 
ss_user-

I'm really not a fan of soldering but I agree DB9's are wayyyy more fun and easier than soldering 2,3,4-5,6-8-20, and 7 on the DB25!
 
I appreciate the explanation. I knew someone on practicalmachinist would know. I wonder how much longer it'll take before this kind of info is lost. I'm relatively young and it seems like it's going to be rare knowledge in a few years.

It is interesting to know what the abbreviations are for, but not really required IMO. Just match up the settings and it usually works. I did run an old Matsurra that would crap out on file transfer about once a week or so. :angry: Also, with ethernet becoming more standard on new models of machines, rs232 will probably go the way of 3.5" floppy..
 
Hey guys, more RS232 problems. It seems that I can transfer one program just fine, but when I try to transfer a second program it will only send about 100 bytes before it pauses indefinitely, meanwhile the control still says LSK until I press reset and then it shows the 100 bytes of the program. If I turn the CNC and the PC off and on again it will let me transfer another program, before starting the 100 byte thing all over again.

What could be the problem? It seems like the end of the first transfer is somehow messing up the second transfer. I should have % at the start/end of the program, right?
 








 
Back
Top