Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Dogface

Pages: 1 [2] 3
16
Technical support / Re:HMI multilevel menus
« on: October 07, 2006, 01:22:10 AM »
The programming you are asking about would be 100% dependent on the model and program capabilities of your specific HMI.  If you wanted different sections of code to run on the PLC, based on the page you are viewing, you could use ILOCK and ILOFF functions triggered by a "bit-on when page opens" function.  Again, dependent on the HMI you are using.

If you like, I can send you a copy of the program for a Maple Systems touch screen that I'm currently using.  E-Mail me if you would like to see it.

Dogface

17
Technical support / Re:Looking for help on an assignment.
« on: September 28, 2006, 01:00:55 AM »
sounds like the conveyor won't run as long as the pack sensor detects a box.  Using relays, allow the pack sensor to stop the conveyor only one time per box.  (clear the relay when the sensor is false again)  I prefer latching relays for this.

Switch selector position B with  Start button pressed should open a N.C. relay that keeps the pack sensor from stopping the belt.

In a real world situation you would want to implement a timer in such fashion that clearing the above mentioned relay would only occur if the sensor was false for a specified amount of time.  This would keep the sensor from cycling due to irregularities in the box, conveyor, etc...

If this dosen't help.... http://users.adelphia.net/~s1ick/jpeg001.jpg
Don't look if you don't need to.  It's just a logic puzzle.

18
Opinions & Feedback / Re:Wish list and comments
« on: September 07, 2006, 10:24:39 PM »
Amen!  This is an extremely simple development environment as is, but having the logic editor map variable names would be soooo sweet.

The thought of being able to label a set of DM variables as an array.... talk about making things more simple.

Oh, while we're at it.  How a bout free programming?  j/k  You do enough of that in the forum.

Thanks,
Dogface

19
Technical support / Re:Communication with i-7018
« on: August 22, 2006, 11:31:05 PM »
I'm currently working on a project using the M-7024 and M-7018.  The most versatile method I've found for doing what you are attempting, is to use a RS232 to RS485 adapter with the PLC and the Input module(s) all on the same twisted pair.  You can plug your computer into the adapter and communicate with either the PLC or with the 7018.  You will not be able to communicate with them simultaneously.  Either TL server or the DCON utility must be running, not both.  I left the converter inside the cabinet for ease of troubleshooting in the future.  This also leaves the RS232 port of the PLC open for future growth, ie... HMI, Internet, Printer....
Also, you will get lot's of errors using DCON(master) if the PLC(master) is trying to communicate with the I-7018.  There are numerous ways to overcome this problem.
A simple DPST toggle switch can be used to isolate the PLC from the rest of the network while you are using DCON.  Power off the PLC.  Activate an input that will halt PLC communication.... many ways.  Activating an input is probably the cleanest method.
Hope this helps.

Dogface

20
Technical support / work smart
« on: August 18, 2006, 03:17:41 AM »
For anyone else that is as much a noob as myself.  Don't get cocky, if you need to physically work on a PLC, turn off the power first.  Or you may find yourself in the postion I am in....ordering a new PLC.  Great PLC by the way!

21
Technical support / Re:Help needed with new project.
« on: June 04, 2006, 08:23:24 PM »
Just use a NPN prox switch with a toothed gear.  Or if it is a high speed application, use a HESS (Hall Effect Speed Sensor)  Unless rotary encoders have come down in price dramaticaly, this solution is both economical and simple.

22
Technical support / Re:M-7018
« on: May 09, 2006, 12:46:19 AM »
Setsystem 6,4 works great!  Thank you!

23
Technical support / Re:Trilogi defaults - wish list
« on: May 07, 2006, 09:57:57 PM »
I tried removing the "Start In:" information.  NOT a good thing.  The program couldn't find the help files.

24
Technical support / Re:M-7018
« on: May 04, 2006, 07:53:11 PM »
Awesome!  I've  been in conversation with ICP-DAS and am aware that all new versions of the M-7018 will use both functions 03 and 04.  But the setsystem command thing.... That's great!  

Thanks a bunch!  I'm actually looking forward to rewriting that section of the program....go figure.

Dogface

25
Technical support / Re:M-7018
« on: April 10, 2006, 10:12:55 PM »
Yes....checked the firmware version.  It is r49.  Like I posted previously.  I'm not sure why the Setsystem command didn't work.  I just know that it didn't.

I don't want to seem negative towards the PLC.  This thing is great!  Not to say it is perfect, but what a powerfull tool!

thanks,
Sean

26
Technical support / Re:MODBUS DATA ERROR
« on: April 06, 2006, 03:03:29 PM »
I'm not sure if this is related or will help.  I too managed to kill the RS485 IC Driver on my PLC.  Using my OIT as the master, I unthinkingly tried to run TLserver using an Auto485.  Zapped it!  The IC Driver on the PLC's is not fault tolerant.  Is there any chance that you have more than one master on the network?

27
Technical support / Re:M-7018
« on: April 06, 2006, 02:54:23 PM »
This is my communication with ICP-DAS regarding some of the issues I've had with the M-7018 input module.  If you have the time and inclination to go through it, please correct me if my information is faulty or misleading.
Thanks.  ;)

Hi John,
I'll do my best to relay the information correctly....
Using a "M" series Tri-Plc and the M7017 input module.

The Tri-Plc manual shows using the following TBasic command to read the inputs on the M-7017
READMB2 ch, ID, addr, var, count      {* Applicable only to M+PLC with firmware r44 or higher}

Example:  
readmb2 13,3,0,DM[10],8   *ch 3 is for ASCII, and ch13 is for RTU.

I had no luck with this command.  Communication Error reported between the PLC and the Module.  I believe that the problem is....this command implements a Modbus RTU function 03x (read holding register) which is not supported by the M-7017.  A Modbus RTU function 04x (read input register) is required.

Tech-Support recommended that I precede the above mentioned command with "setsystem 5,4" to force the PLC into using the function 04x instead of the 03x.  This did not work.  I don't know why...it just didn't.

Looking further, I found a sub-routine that was written by Tri-Plc's tech support guru.
'  This function implements MODBUS RTU function 04 using the INCOMM and
'  OUTCOMM commands.
'  The address to be read is in A
'  The number of channel to be read is in N
'  The data are returned in DM[201] to DM[201+N]
'  DM[101] to DM[200] are used by this function
DM[101] = &H02     ' node address of slave
DM[102] = &H04     ' function 04
DM[103] = A/256    ' upper 8 bit of address
DM[104] = A & &HFF ' lower 8 bit of address
DM[105] = 0        ' upper 8 bit of count
DM[106] = N        ' lower 8 bit of count
X = CRC16 (DM[101],6) & &HFFFF  ' compute the CRC16 of DM[101] to DM[106]
DM[107] = X / 256    ' upper 8 bit of CRC16
DM[108] = X & &HFF ' lower 8 bit of CRC16
FOR I = 1 to 8          ' send out the MODBUS RTU command in binary
  OUTCOMM 3, DM[100+I]
NEXT
delay (10)  ' delay for a while to wait for response
FOR I = 1 to 90          ' assuming small number of read data
  DM[110+I] = INCOMM (3)
  IF DM[110+I] < 0 GOTO @5: ENDIF
NEXT
@5 FOR I = 1 to N          ' convert two bytes into one 16-bit word.
  DM[200+I] = DM[112+I*2]*256+DM[113+I*2]
NEXT

I had some limited success with this snipet of code and further modified it as follows...

dm[101]=&h02  'address of module
dm[102]=&h04  'modbus protocol code to read modicon input register
dm[103]=&h00  'Start address high
dm[104]=&h00  'start address low
dm[105]=&h00  'Read 8 channel high
dm[106]=&h07  'Read 8 channel low
X = CRC16 (DM[101],6) & &HFFFF  ' compute the CRC16 of DM[101] to DM[106]
DM[107] = X / 256    ' upper 8 bit of CRC16
DM[108] = X & &HFF ' lower 8 bit of CRC16
FOR I = 1 to 8          ' send out the MODBUS RTU command in binary
  OUTCOMM 3, DM[100+I]
NEXT
delay (10)  ' delay for a while to wait for response
FOR I = 1 to 30          ' assuming small number of read data
  DM[110+I] = INCOMM (3)
  IF DM[110+I] < 0 GOTO @5: ENDIF
NEXT
@5 FOR I = 1 to 16          ' convert two bytes into one 16-bit word.
  DM[200+I] = DM[112+I*2]*256+DM[113+I*2]
NEXT

almost identical.

It's working, but it was a painfull chore to make it work.  Having said that....I'm just a rookie.

Thanks,
Sean

28
Technical support / Re:M-7018
« on: March 22, 2006, 07:59:22 AM »
Actually, the Setsystem 5,4 command is in the same custom function as the modbus command.  (preceding of course)  Can you recommend any software that will enable me to snoop on the serial communications?  TL server dosen't like it when I start communicating with RTU.

Thanks,
Dogface

29
Technical support / Re:M-7018
« on: March 20, 2006, 04:15:32 AM »
Okay.  Herein lies the problem...I think.  The M-7018 uses the Modbus function 0x04 to read the input registers.  The standard should be 0x03, but it isn't.

I'm using a T100MDr49 but using the command setsystem 5,4 doesn't help the issue.  Is this command valid for both ASCII and RTU?

I downloaded and used http://www.tri-plc.com/trilogi/modbusFunction04.zip with somewhat limited success.  Actually, it may have been completely succesfull.  I just can't decipher the information returned in dm(200)- ? .

Any suggestions?

Thanks,
Dogface

30
Technical support / Re:Maple systems
« on: March 20, 2006, 03:31:30 AM »
Just bought and installed one.  Works great with the TMD-2424+ PLC.  I'd suggest that you utilize the RS232 port on the PLC for communication though.  The communication is much more stable...on my system anyhow.

Dogface

Pages: 1 [2] 3