Haas Controls and DPRNT

Haas Controls and DPRNT

We had an interesting situation arise with one of our customers lately.  The customer has 2 Haas VF6 mills each with a TR310 rotary table/trunnion addition.  These machines have been linked in a DNC system for 5+ years without any issues.  The customer decided to add Renishaw probes and data collection.  They are probing for go/no go after each tool during the machining process.  Using a DPRNT command, that data is sent out the COM port and the DNC software grabs it and appends that data to a text file.  The operator can see the data and act on it if appropriate.  The file is then sent electronically to the purchaser of the part.

Sounds very simple, right?  On the first machine that we brought up and tested there were no problems.  Everything worked as it should.  The second machine was 2 years newer than the first, although you had to look at the serial number to determine that.  The machines looked identical.  When sending data out of the serial port, we got a buffer overflow alarm, and everything stopped.  All the data went into the appropriate file, but the machine alarmed out and stopped.

How could we get an alarm that was tied exclusively to sending data into the control when we were going the other way?  With the assistance of a service tech from our local Haas dealer, we made an amazing discovery.  In an article buried deep within the technical articles reserved for Haas field engineers, we found that the newer controls had more powerful processors.  No big surprise there. These processors can work faster, sending out data faster than the COM port could handle.  To remedy this potential problem, there is now a buffer on both sides of the COM port.  At the end of our transmission, we were sending 2 lines of asterisks.  This caused the output buffer to overflow.

The solution was simple!  We put an M01 (Optional Stop) in the G-code between the lines of asterisks.  This slowed the output enough to get through the buffer without an alarm.  It didn’t even add a second to cycle time.  Now the data comes out and the machine doesn’t alarm.

Other lessons learned from this include the fact that Haas COM ports are always open and ready to send or receive data.  This eliminates the need for a POPEN or PCLOS statement in the G-code.  Those commands are ignored by the control, so keep them in for uniformity across machines if you wish.

Hope you found this helpful.

Leave a Reply

Your email address will not be published. Required fields are marked *