moosty

MrPLC Member
  • Content count

    133
  • Joined

  • Last visited

Everything posted by moosty

  1. How does Omron compare to others?

    OMRON documentation is good, communication protocols are open and you can easily develop your own PC software. You can make a PC-PLC connection cable by your own, it is possible to use 9 pin D-Sub connector and all pinouts are documented. In many PLC brands, you pay for PLC and also make extra payments for cables, communication tools, software etc. OMRON is relatively cheap, and it is possible to make your own software and cables if you want.
  2. I would test it without expanding the cable roll in plant because you may need shielded cable. Use twisted pairs between TX and RX and use remaining cables for ground reference.
  3. barcode with code 39

    Hi, The header and terminator character '*' in Code39 is only for barcode readers, if you don't put this characters, the barcode scanner won't read the code. And scanners do not transmit header and terminator to the host. There are several possibilites: 1- If you are printing your barcode from Microsoft Word, the data between '*' character, your data will be converted into bold font and '*' character is vanished automatically, so barcode readers do not read Code39 barcodes printed from Microsoft Word. Most Code39 barcode fonts also support '!' character as a header and terminator in order to avoid 'auto-bold' function of Microsoft Word. You can try to print your barcodes from Microsoft Excel or any other word processors. 2- Most of the barcode readers beeps after successfully decoding of a barcode by default, if you do not hear a beep when you put the barcode in front of barcode reader, probably barcode reader is not sending a data to host. If barcode reader does not beep when barcode is in the sight of laser beam, there are several more possibilities: a - Your barcode may not be a proper barcode, try to scan other barcodes with your barcode reader and try to scan your barcode with other barcode readers. You may consider to test your barcode with a free image processing software which can be found by a simple search on Google, they especially use a web cam and decodes the barcode in front of the web cam. b - In your readers configuration, Code39 may be disabled, you may need to enable it by scanning the proper barcode in your readers programming manual. Most barcode reader dealers do not ship the detailed programming / user manual, they only ship a single sheet guide, you may find the detailed user manual in manufacturers web site. User manuals are mostly found in pdf format. Unfortunately, most of the barcode readers are not able to scan barcodes from CRT or LCD screens, so you may need to print out the necessary pages of user / programming manual of barcode reader. c- Even you have RS232 output on your barcode reader, the reader may be not configured for RS232, many readers are configured for keyboard emulation by default. You should find the programming / user manual of the reader and scan the proper barcodes to set barcode reader for RS232 communications. d - You may also need to adjust baud rate, handshake and any other RS232 settings for your barcode reader. You also need the programming / user manual for this. 3 - First, be sure that barcode reader is scanning and decoding the barcode data, and sending it to the host. The easiest way to test an RS232 barcode reader is using Hyper Terminal software on PC. All RS232 barcode readers are designed for PC, and have female sockets. You can directly plug it on your computers serial port. Try to see the barcode readers output on Hyper Terminal software. 4 - Mostly, OMRON PLC RS232 outputs have Female sockets, so you must have a male socket to plug in. However, your barcode reader should have a female socket too. Gender changers may fool you, it is better to make your own. I am not sure but I guess that the proper gender changer cable diagram for barcode reader as follows: OMRON PLC Side PC Side DB9 Male Socket DB9 Male Socket Pin 2 <--------------------> Pin 3 Pin 3 <--------------------> Pin 2 Pin 9 <--------------------> Pin 5 5 - Most barcode readers only send scanned data, so you may only need a simple RXD command. And for convenience in PLC programming, you may set up a header and terminator characters both on PLC and barcode reader. Search the words 'prefix' for header, 'suffix' for terminator in barcode readers programming manual. Hope this helps.
  4. Communicating with Omron in VB (Ethernet)

    Try INDAFINS I have developed it for my own pojects and really working fast, and it is very simple to use.
  5. Win CC Flexible ActiveX Error

    Hi, We want to use our homemade ActiveX in WinCC Flex, but it raises the following error when we want to compile: "Fatal ERROR: screen item Screen_1 in screen Screen_1 contains inconsistent data and should be deleted." Our ActiveX contains another ActiveX, SAXComm for serial communications. And WinCC raises the same error even used alone in WinCC. I am suspicious about SAXComm object that it drives our ActiveX into this error. I have tried with several another ActiveX files without errors. I have googled around, but could not find any satisfactory result, does anybody have experience about this error?
  6. Win CC Flexible ActiveX Error

    It is WinCC Flexible 2008, Build: V1.3.0.0_1.83.0.1 I have a project about product traceability and management. I I am trying to use my own ActiveX controller. Normally, manual says that is is possible to reference a property of ActiveX as HMIRuntime.Screens(1).ScreenItems("MyObject").Property = Foo or Dim objTemp Set objTemp = HMIRuntime.Screens(1).ScreenItems("MyObject") objTemp.Property = Foo Unfortunately, it causes a crash on runtime. I found the only way as creating a tag and linking it on a property by using 'Properties->Tag Assignment" It is slow but working. However, it is not possible to read any property of an ActiveX control in WinCC, 'Tag Assignment' is also not working because I guess that it is only working only in one direction, it just copies the contents of a tag to the property of ActiveX, reverse is not possible. Also, I have tried to pass some information as a parameter of an event, however it is also not possible to do it. Finally, I have programmed multiple events in my ActiveX to achieve my goal (After scanning barcode, search records from database and make a decision one of 'divert,direct and wait' options. However, WinCC is a heavy software and running too slow. I am using it as a customer requirement. Thank you very much for your interest GixRamones, finally I have got a solution with lots of tricks, and I am writing this post as a reference for this trouble, it may also work for someone else. As a conclusion, WinCC Flexible is good if you: - are not an experienced programmer and want to do nothing more than clicking on screen - Just use it as an HMI - don't have a big project And avoid using WinCC - For complex projects - Complex decision systems requiring database operations - with third party ActiveX I also want to try ProDave and/or LibnoDave for PC - SIEMENS communication in my next projects, I think it will be a light solution for me
  7. FINS and Visual C++

    Sure, I can help you If I am online. I put two Skype buttons on my blog, one adds me as a Skype contact and the other one shows my online status and starts a chat session if I am online. My Skype account name is indanotes.blogspot.com
  8. FINS and Visual C++

    Sure you can, but it does not make any sense actually, PC CPU is so fast that For..Next loop should be executed so quickly and PC collects the output string in com ports output buffer.
  9. FINS and Visual C++

    Host Link protocol does not include ICF, RSV.. flags. So my example does not contain any of those flags. However, if you want to study on FINS protocol, I am attaching mdlFINS, which is the hearth of INDAFINS. Check the 'PackFinsRead_' function, it prepares the FINS package with ICF, RSV,GCT,DNA,DA1,DA2,... If you are going to use Ethernet communications, the package prepared by PackFinsRead_ function would be enough for you, but if you are going to communicate over RS232, you have to add checksum and '*' character at the end of prepared package, it should be same as in Host link sample I think. Hope this helps for your project. mdlFINS.zip
  10. FINS and Visual C++

    You are welcome. I had developed the module 'mdlPLC' in the attached application for Host Link protocol and it is used for RS232 communication. It has been working on several applications since 2004 without any problem. Host Link is easy to implement, but allows only 4 digits (up to DM9999) of address range, and a data package can contain at most 28 data words. FINS protocol over Ethernet is much more suitable if you deal with high amount of data and it supports data memories over DM9999. FINS protocol is also available on RS232 with just an addition of checksum as in Host Link. For that reason, I believe that Host Link is obsolete and decided to develop INDAFINS for FINS protocol. I have implemented the alpha version for Ethernet only, but I want to add support for RS232 soon. ReadDM function does same operations for both applications, but uses different communication protocols because I wanted INDAFINS to be backward compatible with my existing applications. One of the reasons that I keep ReadDM function as -nearly same- because it returns the data from PLC, making it possible to work on while debugging your application. I hope I can complete the RS232 support for INDAFINS soon.
  11. FINS and Visual C++

    I think you are using Host Link communications. I am attaching a sample software for host link, you can use ReadDM function for reading and WriteDM for writing into data memories. I always use mdlPLC for RS232 communication in my projects and works witohut any problem. However, I have built this sotware this morning for you and did not tried on a real PC. Comm port and communicatino settings were done in Form.Load event, you may need to change them according to your PC and PLC. By default, I have set them to com 1, 9600, e,7,2, no handshake. If you want to see how packages are prepared before being sent to PLC, you can digg functions ReadDM and WriteDM, find the lines objComm.Output = Command you can place a new textbox on form and add something like: frmMain.Text1.Text = Command before lines objComm.Output = Command Hope this helps Sample_Read.zip
  12. Understanding the FINS Protocol

    Hi Carlos, I think you are right, it should be 80, I also wondered what 31 was. I think I am going to search it at this weekend. However, I believe that driving the outputs directly from PC may not be safe because PC is not stable at all. Especially if you are using Ethernet communications, network delays may be a problem and you may not be able to change your outputs when you need it. For example, you may not be able to stop a motor in case of emergency. It may be better to drive outputs over data memories. Human body does the same, decisions are made by brain but reflexes are managed by cerebellum. I mostly design my systems by thinking PC as brain and PLC as cerebellum.
  13. FINS and Visual C++

    Hi, I have developed an ActiveX controller for Fins over Ethernet. It is still downloadable from : http://code.google.com/p/indafins/downloads/list with a draft documentation and sample application code. I have never tried it with C++, however it should work without any problem with any programming environment supporting ActiveX. It also works with power point and excel. I am planning to publish an updated version for next weeks, you can get information from: http://indanotes.blogspot.com/2008/11/inda...n-fins-ocx.html
  14. PC touch screen

    Hi, I have published my ActiveX control for ethernet communication. It is using FINS commands over UDP. It is still in alpha version but working very efficiently. It is freeware and will be freeware. Reading and writing of DM and EM bank 0 through 7 is available at the moment. I am going to add HR and timers and available stuff where FINS permit. I am also planning to give RS 232 support in the same component. Unfortunately there is no documentation yet, I am planning to publish soon. A draft documentation is available now. Announcements and valid download addresses will be published at related blog post as a permanent link. Now project is hosted on Google Code . You can download the sample application + ActiveX controller from here And source codes of sample application from here I realised that a bad naming on source code folders. I have fixed it and it can be downloaded here You can also find samples for principles of PC - PLC communications in my related blog posts I am also planning to publish samples for usage of my ActiveX control with Excel and Power Point. I hope that it will be useful for many people.
  15. CX Server Lite and MS Access

    Following link is nice for VB http://www.garybeene.com/vb/tutor.htm Also I have puplished an ActiveX controller for FINS, you can download it from my blog I hope I can publish its documentation but unfortunately it requires VB programming too.
  16. I have released the alpha version of INDAFINS ActiveX yet. It is an ActiveX for FINS protocol over Ethernet (UDP) . I am also planning to support RS232 on the same ActiveX after completing at least %90 of FINS commands common for many OMRON CPU. I am planning to publish all project history on my related blog post I advice you to subscribe RSS feeds to get more news about INDAFINS. I am going to publish sources of the tester soon, I wish I can prepare a draft documentation as soon as possible.
  17. C200HS & FINS

    Ok, I have hosted the code on code.google.com I have released the alpha version of INDAFINS ActiveX yet. I am planning to publish all project history on my related blog post I am going to publish sources of the tester soon.
  18. C200HS & FINS

    Hold on friends, I am going to publish an open source ActiveX component on sourceforge.net for the sake of humanity I have applied to sourcefoge.net today, waiting for approval and hope I can publish the alpha version this weekend. Now I am at alpha version, it is supporting Fins over ethernet to read and write data memories only now. It is going to support both Ethernet and RS 232 (Fins over RS232) in a single component, and aiming to cover at least %90 of FINS commands as seperate functions such as: ReceivedData = PLC_Com.ReadDM(DMAddress,NumberOfWords) ReceivedData = PLC_Com.ReadEM(DMAddress,NumberOfWords,EMBank) and for write operations: PLC_Com.WriteDM(DMAddress,DataToWrite) I hope I can find enough free time to develop further; unfortunately it seems that it is not going to have a proper documentation at the beginning.
  19. Pallets RFID

    We have done by V720 series, tracking plastic boxes between plant and suppliers. Suppliers are using an hand held terminal about the materials in boxes, and lots some other informations). Then we read ID tags in plant, and update warehouse records in database. We also synchronise warehouse records with SAP. If you want to trace your pallets, you may need portable handheld computers, V720 series use ISO 15693 compatible I-Code SLI chips, so you can find many portable pocket pc devices. Omron also has a reader module for pocket pc devices, however I offer you to use a pocket pc with a built in RFID reader such as Psion Teklogix. For PLC programming, we mostly used protocol macro in CJ series, and use TXD / RXD commands in older versions. V720 series readers have very easy handling protocol, we directly connected RFID readers to PC in some cases. It was a fat project using more than 40 000+ ID tags, 60+ reader antennas, 20 + hand held terminals.
  20. Problem with V720-HMC73 A

    Hi, I am ataching a tool dig communications protocol of software using RS232. A handy tool to capture communication between devices and PC I have analyzed 'undocumented features' of many RS232 devices. This tool may help you to cath if you are sending exactly same commands as sample program. Hope this works. Best regards, portmon.zip
  21. Communicating with Omron in VB (Ethernet)

    I think you already have answer, you are receiving data it hex format, when you convert it in to binary, your data seems as follows: Word Value B 15 to B8 B7 to B0 0000 00000000 00000000 0000 00000000 00000000 0808 00001000 00001000 0008 00000000 00001000 0998 00001001 10011000 03DC 00000011 11011100 2000 00100000 00000000 0000 00000000 00000000 42A3 01000010 10100011 0000 00000000 00000000 Seems that you are receiving 10 words successfully.
  22. TCP/IP communication with A-series PLC

    I think, we must be sure that Comtrol is sending data through ethernet. Try to program comtrol to send data to your PC, ou can try to use HyperTerminal for listening and displaying TCP/IP data. For UDP protocol, there are lots of free software on the net.
  23. CX Supervisor with SQL Server

    Sounds like that your table needs an index. Did you checked that database table is indexed as unique over your key field? If so, you should not be able to insert a new record having the same key, SQL server should return an error. And if table is indexed on fields that you may need to search, searching performance should be improved.
  24. Ethernet communications

    I think FINS gateway works as a communication layer. I have not been using FINS gateway since I have realised a bug in it (this was nearly two years ago). For a great possibility, guys in OMRON should have fixed this bug, but as I remember that FINS gateway was stopping without giving any error messages. When it stops, the software written in VB (or another language) was still reading the last read values and getting no error messages. Once we made a test, when we realised that FINS was frozen, we plug the ethernet cable off on PLC, but our VB software was still getting data from FINS layer. This was two years ago and I strongly believe that it should have been fixed. for two years, we are using our own library for ethernet communication and we never needed to communicate by more than one application on a computer.
  25. Communicating with Omron in VB (Ethernet)

    The documents at the following documents may include detailed information: http://forums.mrplc.com/index.php?act=ST&f=17&t=5476