Home › ELEKTOR FORUMS › Profiler Millling Machine (January 2007) › Inside the Profiler

ELEKTOR FORUMS

Please log in to post a reply or subscribe / unsubscribe to topics

Topic: Inside the Profiler

Author Post

Pascal

6 posts

Popping In
Popping In

Read post 12-04-2008 19:45

Good morning,

Following are a few extensions that can be made to the Profiler. They are from my personnal investigations, use them at your own risk.

I will update that topic each time I will discover some new interesting features not used in the "standard" Profiler.

-------------------------------------

A 12 button keybord can be connected to the Profiler to enable some manual operations. They must be connected on the nodes of a matrix with
- 4 columns connected to HDR1, pins 10, 11, 12 and 13 (P4.3 to 6)
- 3 rows connected to HDR1, pins 7, 8 and 9 (P4.0 to 2).

Buttons functions :
BP42 : Go home X,Y and Z
BP62 : Go home Z only (up)
BP52 : X+ (to right)
BP32 : X- (to left)
BP51 : Y+ (to back)
BP31 : Y- (to front)
BP41 : Z+ (down)
BP61 : Z- (up)
BP30 : Change mode (Local, DCC, HPGL Line, HPGL Plot)
BP40 : [Not used]
BP50 : The current pos become the new "Home"
BP60 : Toggle On/Off of the output SPDL (spindle motor)

Note : the key number are from the P4 bits number, in column/row order. Ie :BP62 : col=P4.6, row=P4.2. It should be used only to locate them electrically. The better physical disposition cannot be done until all the functions will be known.

-------------------------------------

A 4 lines x 20 char LCD display can be connected to the profiler main board.
It will display the profiler status, its work mode (3 modes: DCC, HPGL line, HPGL plot), the coords X Y and Z, the trap events, etc. There are around 40 messages (full list below in the thread).

D0 to D7 : HDR3 pins 37 to 44 respectively
RS : HDR3 pin 45
E : HDR3 pin 46
RW : HDR3 pin 47

The 8 data wires (pins 37 à 44) are bufferised by the HC245 near the pins (IC10), but the 3 others that comme from A0 and from the CLPD pins 30 and 29 are not. Be carefull.

Note : the embeded software uses the "status" LCD bit, so the RW line is mandatory.

-------------------------------------

When the jumper JP1 (labelled "NO AH") is closed, the profiler elecronics will start without searching the "0" points ons the three axes. That enable a PC to comunicate with the board even if it is not connected to the mechanic, ie to do some tries around an LCD

-------------------------------------

The two empties places IC1 and IC3 (under the processor board) would enable to set in place a DAC (IC1) + AOP (IC3), that would generate an analog voltage outputed on the J18 connector (0-10VCC), ie to drive an analog controled speed drill.

I have not still found the IC1 16 pins chip. Its pinout would be :

1 : Vcc 16 : to +5V through R64
2 : Gnd 15 : analog output to IC3
3 : Gnd 14 : to +5V and C11
4 : d7 (HDR3.20) 13 : Gnd
5 : d6 (HDR3.19) 12 : Gnd
6 : d5 (HDR3.18) 11 : d0 (HDR3.13)
7 : d4 (HDR3.17) 10 : d1 (HDR3.14)
8 : d3 (HDR3.16) 9 : d2 (HDR3.15)
[pins 2, 3, 14 and 15 corrected on 04/18th. I apologize]

The 8 lines d0 to d7 are driven by an ULN2803 (IC7), ouput collector. R57 to R62 are the required pullup for these lines.

If someone know it, please let know its ref here !

-------------------------------------

HDR2.16 (not wired) is the Tool Change output (open collector from an ULN2003). It can drive a +5 level out and is toggled by the command @TC n; with n=0 or 1

-------------------------------------
A few open collectors output (from a an ULN2003) not wired can drive a led (cathode to the output, anode to +5V through a resistor).

HDR2.17 : the led will light during pause, halt, wait (@WT) PU and PD commands.

HDR2.18 : the led will light when the profiler leave the mode 0 (Local mode).

HDR2.19 : the led will light on software error (ie bad parameter given to a command).



A bientôt !

Post edited by Pascal on 12-04-2008 23:08

Post edited by Pascal on 12-04-2008 23:11

Post edited by Pascal on 18-04-2008 20:08

Post edited by Pascal on 18-04-2008 21:32

Post edited by Pascal on 19-04-2008 14:48

Post edited by Pascal on 20-04-2008 00:25

Post edited by Pascal on 20-04-2008 00:32

Post edited by Pascal on 20-04-2008 18:17

Post edited by Pascal on 20-04-2008 21:01

Post edited by Pascal on 20-04-2008 21:58

pk1

254 posts

Power User
Power User

Read post 14-04-2008 15:13

Hi Pascal,

interesting feature, you wrote about. Two questiones:

A 4 lines x 20 char LCD display can be connected to the profiler main board.
It will display the profiler status, its work mode (3 modes: DCC, HPGL line, HPGL plot), the coords X Y and Z, the trap events, ... around to 40 messages.


What kind of switching enables 40 messages? I guess, they can't be shown at the same time.

Did you realize this Profiler-competition so it's shure that Profiler-firmware supports LCD-output? (I remember several red buttons for motor, vacuum ... without firmware support)

Greetings

Peter

koolr

30 posts

Occasional Visitor
Occasional Visitor

Read post 14-04-2008 23:17

To PK1

The Red buttons for motor and toolchange does work, for vacuum I don't know. You need to acces the file Colinbus.dat with Microsoft Access and change the appropriat entries. The password to the file was entert somewhere in the forum some time ago and is:COLt657916

Sorry for my English, it's not my native language.

Ronald

pk1

254 posts

Power User
Power User

Read post 15-04-2008 08:20

Hi Ronald,

thanks for informations. Colinbus.dat has changed with ColiDrive81, couldn't open it with Access 2003, no problems with ColiDrive44.

Peter

djam1

13 posts

Popping In
Popping In

Read post 16-04-2008 12:26

Hi Pascal,

RE: IC1

I have pins 2 and 3 connected to ground.

Looks like it might be a AD7524, TLC7524 with the connections
used backwards, ref as the output and out 1 as the reference
voltage. I expect IC2 is a zener or voltage reference.

Regards,
Darren

Pascal

6 posts

Popping In
Popping In

Read post 18-04-2008 20:06

Hi all !

To PK1 :

What kind of switching enables 40 messages? I guess, they can't be shown at the same time.

The differents messages are displayed from the status of the profiler. I suspect that the 4 lines HDR1 pins 10 to 13 and the 3 lines HDR1 pins 7 to 9 may be used to switch the controler in differents states : the software checks 1 line at 0 while the other are at 1 in each group. I have not commented these routines, so i do not know more about their usage.

Did you realize this Profiler-competition so it's shure that Profiler-firmware supports LCD-output?

No, it is not a "competition" only an information. I am sure it works because I have commented all the assembler source that drive it, then I retrieved all pins that are used from hardware and I confirmed them with an oscilloscope check. I will buy a display this week

Below are all the messages :
MsgEOT: DC.B "!EOT",Car_CR,Car_LF
MsgErr: DC.B "!ERR",Car_CR,Car_LF
MsgRDY: DC.B "!RDY",Car_CR,Car_LF
DC.B "!BSY",Car_CR,Car_LF

MsgEscUC: DC.B CarESC,"UC:",Car_CR,Car_LF
Msg4Z3Z: DC.B " 0000.000",Car_CR
Msg3Z3Z: DC.B " 000.000",Car_CR,Car_CR
MsgIdVer: DC.B "ID : 707602-0001 V 1.10 - 14/11/05 ",Car_CR,Car_LF
MsgSetCfg: DC.B "SETTING DEFAULT CFG ! PLEASE WAIT ! ",Car_CR,Car_LF
MsgConfMode: DC.B "RECONFIGURING MODE SEND CONFIG STRING ",Car_CR,Car_LF
MsgConfNow: DC.B "RECONFIGURING NOW ! PLEASE WAIT ! ",Car_CR,Car_LF
MsgHomingXY: DC.B "HOMING X ",$26," Y AXIS ",Car_CR,Car_LF
MsgHomingZ: DC.B "HOMING Z-AXIS ",Car_CR,Car_LF
MsgMemRead: DC.B "MEMORY READ MODE ",Car_CR,Car_LF
MsgReadyDCC: DC.B "SYSTEM READY DCC MODE ",Car_CR,Car_LF
MsgReadyLine: DC.B "SYSTEM READY HPGL LINE MODE ",Car_CR,Car_LF
MsgReadyPlot: DC.B "SYSTEM READY HPGL PLOT MODE ",Car_CR,Car_LF
MsgReadyLoc: DC.B "SYSTEM READY V 1.10 LOCAL MODE ",Car_CR,Car_LF ;060944
MsgHalted: DC.B "!! SYSTEM HALTED !! OPEN HALT SWC TO RST",Car_CR,Car_LF ;06096E
MsgProgWait: DC.B "RE-PROGRAMMING NOW !PLEASE WAIT ! ",Car_CR,Car_LF ;060998
MsgProgMode: DC.B "SYSTEM NOW ENTERING RE-PROGRAMMING MODE!",Car_CR,Car_LF ;0609C2
MsgRxProg: DC.B "RECEIVING PGM CODE !PLEASE WAIT ! ",Car_CR,Car_LF ;0609EC
MsgStarting: DC.B "SYSTEM STARTING UP PLEASE WAIT ! ",Car_CR,Car_LF
MsgHPGL_NI: DC.B "HPGL COMMAND : NOT IMPLEMENTED ",Car_CR,Car_LF ;060A40
MsgESC_NI: DC.B "CarESC SEQUENCE : NOT IMPLEMENTED ",Car_CR,Car_LF ;060A6A
DC.B "CODE TEST MODE ACTIVPRESS ANY KEY ",Car_CR,Car_LF ;060A94
DC.B "PERFORMING CURVE SUBROUTINE ",Car_CR,Car_LF ;060ABE
MsgStepMast: DC.B "STEPMASTER V 1.0 ",Car_CR,Car_LF ;060AE8
MsgUserUnits: DC.B "User Units per mm : ",Car_CR,Car_LF ;060AFE
MsgXYZ: DC.B "X: ;Y: ;Z: ; ",Car_CR,Car_LF ;060B14
MsgLigneVide: DC.B " ",Car_CR,Car_LF ;060B2A
MsgEscMD4: DC.B CarESC,"MD:4",Car_CR,$1A,$00 ;MsgLigneVide
MsgPos_mm: DC.B "Pos in mm",Car_CR,Car_LF ;060B48
MsgPos_uu: DC.B "Pos in uu",Car_CR,Car_LF ;060B53
MsgAbs_uu: DC.B "Abs in uu",Car_CR,Car_LF,$00, ;060B5E
Msg_EC00: DC.B "EC00: NO ERROR ",Car_CR,Car_LF ;060B6A
Msg_EC01: DC.B "EC01: INVALID CMD ",Car_CR,Car_LF ;060B80
Msg_EC02: DC.B "EC02: INV NR. OF PAR",Car_CR,Car_LF ;060B96
Msg_EC03: DC.B "EC03: PARAMS OVF ",Car_CR,Car_LF ;060BAC
Msg_EC05: DC.B "EC05: ASCII INVALID ",Car_CR,Car_LF ;060BC2
DC.B "EC08: FOLLOWING ERR." ;060BEC
Msg_EC09: DC.B "EC09: LIMIT ERROR ",Car_CR,Car_LF ;060BD8
DC.B "EC10: MACRO STK OVF ",Car_CR,Car_LF ;060C02
DC.B "EC11; CFG BUFFER OVF",Car_CR,Car_LF ;060C18
Msg_EC21: DC.B "EC21: CONFIG ERROR ",Car_CR,Car_LF ;060C2E
Msg_EC22: DC.B "EC22: DIVISION BY 0 ",Car_CR,Car_LF ;060C44
Msg_EC23: DC.B "EC23: FATAL ERROR ",Car_CR,Car_LF ;060C5A
Msg_EC24: DC.B "EC24: INVALID E-O-F ",Car_CR,Car_LF ;060C70
Msg_EC25: DC.B "EC25: INVALID FORMAT",Car_CR,Car_LF ;060C86
Msg_EC26: DC.B "EC26: INVALID SEPAR ",Car_CR,Car_LF ;060C9C
Msg_EC27: DC.B "EC27: BUFFER OVF ",Car_CR,Car_LF ;060CB2
Msg_EC28: DC.B "EC28: RX FRAMING ERR",Car_CR,Car_LF ;060CC8
Msg_EC29: DC.B "EC29: RX OVERRUN ERR",Car_CR,Car_LF ;060CDE
Msg_EC30: DC.B "EC30: RX PARITY ERR ",Car_CR,Car_LF ;060CF4
Msg_EC31: DC.B "EC31: RX PAR ",$26," FRM ",Car_CR,Car_LF ;060D0A
Msg_EC32: DC.B "EC32: RX OVR ",$26," PAR ",Car_CR,Car_LF ;060D20
Msg_EC33: DC.B "EC33: RX OVR ",$26," FRM ",Car_CR,Car_LF ;060D36
Msg_EC34: DC.B "EC34: RX OVR+FRM+PAR",Car_CR,Car_LF ;060D4C
Msg_ECpp: DC.B "EC..: INVAL ERR CODE",Car_CR,Car_LF ;060D62
MsgIrqErr: DC.B "EC99: UNEXPECTED IRQSOURCE VECTOR : ",
OfsPlaceIrq EQU * - MsgIrqErr
DC.B " ",Car_CR,Car_LF





To djam1 :
I have pins 2 and 3 connected to ground.
Looks like it might be a AD7524, TLC7524 with the connections
used backwards, ref as the output and out 1 as the reference
voltage. I expect IC2 is a zener or voltage reference

Thank you very much !!!

You are right, the pins 2 and 3 are connected to ground, not to Vcc. It is a mistake from me.

I will get a look on it. But I will first look for in the asm source what commands are used to setup the output voltage.

Post edited by Pascal on 18-04-2008 21:19

Please log in to post a reply or subscribe / unsubscribe to topics

Spotlight

Design your own Embedded Linux Control Centre on a PC

These days a lot of options exist if you want to control home electrical appliances. This book covers a do-it-your-self system made from recycled components.