SolidRio

MrPLC Member
  • Content count

    50
  • Joined

  • Last visited

Posts posted by SolidRio


  1. I am trying OPC servers from mitsu (never worked with them before).

    With UA version i have no problem.

    When i configured connection in DA server and start "Monitor view". I always got "Cant connect to OPC server".

    Reinstalled. Installed another version (7.02, 6.10). But problem the same. 

    I've installed on another laptop with the same system (7 x64), but without many plc soft here (only gx works 2 and gx developer) and it works without problem.

    I thinking some soft is blocking it. Maybe someone faced this problem before.

    p.s. Already second topic in one week with asking for a help, god....


  2. 1 hour ago, Alex R said:

    I'm new to PLCs (and I'm a simple Mechanical Engineer).  I've been on a FX/GX Works 2/ladder logic training course but, of course, it hasn't covered everything that I need for my first PLC project.  My first problem is counting high speed pulses; they come on average every 7 ms (but this will vary), and each one is about 0.5 ms long.  Reading up about this suggests that I need to use High Speed Counters C235 etc, running off X0 etc.  I need to store the value of the counter at several times (e.g. at 0.5s, 2s & 2.5s) or the time to set counter settings (e.g. at 50 pulses, 350 pulses & 400 pulses). 

    Anyone got a bit of sample (ladder logic) code that they could send me to help me get going?  I've tried trawling this site and similar things have been asked previously, but I can't find a suitable piece of code to modify.

    As i understand (by Gx works 2 and FX) you looking for something like fx3 (or older) plcs. 

    Yes, you need high speed counter. I cant help you with a code. But you may check this manual (4.8 item - High-Speed Counter [C] (FX3U/FX3UC PLC)):

    http://dl.mitsubishielectric.com/dl/fa/document/manual/plc_fx/jy997d16601/jy997d16601q.pdf

    There are some examples of code and many useful information.

    1 hour ago, Alex R said:

    p.p.s. Do these high speed counters not work in Simulation?  I've tried a few examples and can't get the Counters to count.

    As far as i know - you cant simulate high speed counter. At least when i tried - i failed.

    P.s. A little bit hard task for first plc project.


  3. 17 hours ago, glavanov said:

    I'm not saying it's inpossible to do it with main unit, but i quit trying.

    Main unit positioning instructions are ment to be used for simple positioning tasks.

    When you use pulse trian to control servos you don't actually have feedback to the PLC what the amp is doing.

    You can count only on good servo tuning and wire some amp outputs to PLC  for example "in position" signal to vrify that servo is done with positioning and redy for next instructio.

    Yes, the scan time delay is factor.

    When you need synchronisation of servo with another Axis or encoder you need special function unit that can hadle encoder, high speed inputs for positioning or synchronisation start and delay compensation parameters that can be set depanding on your mechanical/servo system, mark detection function also.

    FX5-40/80SSC-S have it all, but yes it can work only with JE/J3/J4-B series amps with SSCNETIII/H optical interface. It's not cheap solution but is dedicated exactly for aplications like yours and it's maybe the most cost efective solution out there when you can use it with JE_B series amps.

    It have differential/incremental encoder/MPG inputs, high speed/mark detection inputs.

    It have synchronous control and Cam function, also cam auto generation function.

    All the Axis data like current feed value, command feed vlaue, or encoder counter value right there in the buffer memory redy to be used in sequence orogram or monitored.

     

     

    Your post made me think all evening after work. I got it. And it seems moving encoder on motors shaft in first project helps in that way - more pulses on 1mm of production - scan time delay affects less on error, cause if i wrong count 250-500 pulses, its only 1-2mm, but if i use the wheel - 250-500 pulses - its already 75-150mm. 

    Next time i will fill mitsu servos, amps and that module into that type of project. And make this sh*t work without error in distance.

    Really thank you for your effort in this question. 


  4. On 27.04.2019 at 1:48 PM, glavanov said:

    Brand and model of the servos?

    Different servos being used. First one was Delta servo, second Lenzo.

    On 27.04.2019 at 2:09 PM, glavanov said:

    There's no simple answear for your problem.

    I had a similar task few yers ago. No luck with FX5 main unit only.

    I ended up adding FX5-40SSC-S module and end all my problems.

    Check the solution example below. It's IQ-R series simle motion module, but FX5-40/80SSC-S module have the same functions, but up to 4 or 8 Axis.

    Why it cant be done with only main unit and ? Cause of low speed of high speed inputs? Or program scan time? Or wrong count? I just dont get it. 

    I dont know how to implement that module with this servos. And still you must put encoder signals to fx5u main unit, isnt? We dont have problem with servo control, because we change line speed and error still same. So it seems problem with encoder.

    I am not working with servos and encoders at all (cause working in mining industry), but its second project on side with encoder and i feel really dumb. 

    In first project moving encoder on motor (more pulse on mm of production) helped fix error to 1-2 mm (and thats ok), so it seems possible with cpu itself, but i wanna do it with encoder wheel on production (2,5 pulse on mm of production).

    On 27.04.2019 at 2:09 PM, glavanov said:

    Удачи братан! :)

    ;-)


  5. Hello everyone. I need to share my thoughts with someone.

    I already have 2 project that’s includes machines like flying saws (that moving with production line and cut) and I faced some problems. Maybe someone will share their experience.

    1 project:

    Production line that creates sandwich panels. At the end of line staying flying saw which moving by servo. As a distance meter was 1000 HTL push pull encoder with 300 mm circle that moving on sandwich panel.

    I used FX5U plc. Connected channel A and B on X0 and X1. Made High speed I/O Ch1 with 2 phase 1 multiple. We put 2 1,5k Ohm on both X0 and X1. Encoder cable shield was grounded.

    Program was like pulses*ratio=distance. Distance =>Setpoint -> Cut.

    And then started something random. Every start of line error between setpoint and real distance of panel was different. In one start there was error like 2-3 mm. After a day maybe, when they start line different start to be like 10mm or another. They had to increase setpoint every time.

    We checked everything encoder circle, its rotating on panel, all mechanicals things. Nothing helps. We decided that cause was the temperature in room. In place where encoder stayed sandwich panel was right after heating process and metal decreases in length right after saw cut it.

    So we put encoder on motor shaft which pull material. So now we have something like 250 pulses on 1 mm of production (before was 3.33333) and dont depend on real material. And that’s helped. Error was stable 1-2 mm.

     

    2 project:

    Production line that creates plastic pipes.

    Flying saw at end of line. Encoder 1250, circle 500 mm.

    FX5U, X0 and X1. 2 phase 1 multiple. Resistance and ground.

    Program same.

    At the start was multiple random difference errors like 20-30 mm. Accidentally we noticed that our resistance (0,25 watt) were really hot. We cut them. And all started to work properly, but… Difference between setpoint and real pipe length was something 70mm. So they want 9,72 meter pipe and for that need 9,79 setpoint. Error was stable and they seems ok with that. But on another day when we left city – they started another orded with thicker pipe and to get 9,72 pipe they need to put 9,82 setpoint. They still ok with that, but I am not.

    Maybe I something missing, but encoder that rolling on material is just don’t work with me. How to make precise cutting in this type of projects? Speed synchronization between line and saw is ok, cause cut is clean and on different speeds – same error. Guys, help me.


  6. On 09.04.2019 at 0:56 AM, arnoldzw said:

    Should the solution with the FROM instruction work on the FX3U as well without additional settings? Or do i need to configure some additional things in the PLC parameters?

    Yes, it should, FROM will work without additional things, but you should check difference in BFMs of FX2N-4AD and FX3U-4AD (check manuals).

    On 09.04.2019 at 0:56 AM, arnoldzw said:

    Do i need to configure these or other additional settings here, or can this be empty and leave the program as-is with only the FROM instruction?

    This can be empty and your program will work with only FROM instructions.


  7. What inverters do have? Asking because if its mitsu - you can manage them via mitsu invertor communication and divide them between 2 channels (or use cc-link ie basis if inverters have ethernet).


  8. 16 hours ago, Inntele said:

    Keep in mind, the reliability of OWEN PLCs is in times lower than Mitsu provide, while I suppose the application requires the use of reliable equipment. If you're looking to the side "ПЛК100-ТЛ", rather it belongs to the class of intelligent relays than to a PLC. 

    I understand that. This system only provide parameters indication and failure of equipment will not hurt anything, but its undesirable of course. I would be happy if mitsu have something with 103 protocol, but they dont. Maybe you can advice something? We cant afford Siemens (quite high price for such small system). And i dont know anything about writing of communication drivers. 


  9. 1 hour ago, Inntele said:

    Mitsu does not have, but the appropriate communication driver can be written.

    Its seems not quite easy...

    Meanwhile i found cheap plc from russian company "OWEN" (i think you know them) with support of 103 protocol, but i've never worked with them before. i should check compatibility with GOT (which we already have) and their software. 


  10. Hello everyone. 

    I have 11 Siemens Overcurrent Relay Modules that only can be communicated via IEC 60870-5-103 protocol. I need to make a system that will be gathering information from them (Currents, Voltages, Some discrete signals, etc.). On mitsubishi site i've only found information about 101/104 protocols.

    Does Mitsubishi have a plc that can be connected via IEC 60870-5-103 protocol? If not, maybe someone knows another plcs that can be connected to those modules (I am already looking on siemens site, but its seems not quite cheap).


  11. Little update on this old topic.

    Project ended up with CC-Link IE Basis (Thanks to someone in our office who bought FR-A840-E by mistake). In the manual was written that only 6 inverters  can be connected to 1 plc. But accidentally i faced on mitsubishi site notes to new firmware of fx5u (FX5 Firmware 1.110): "Expanded number of CC-Link IE Field Basic slaves (6->16)". I updated plc firmware and CC-Link IE basis inverter connection works flawless. 

    1 person likes this

  12. So, i tested MODBUS.

    First, my previous problem was only when some of inverters is offline. I think i have some problem with program sequence or with response time waiting, i will find out.

    Second, Its seems when you use small amount of commands (IVCK/IVDR etc) - mitsubishi inverter protocol is winning at speed. 

    I dont know who will win in case full control of inverter (full monitor and control), i will try it when i will have time.

    MODBUS (in case of Mitsubishi inverters) not so good as i thought at start. Inverters data divided between many ranges of memory and you cant cover that by 1-2 ADPRWs which can only cover 125 points of memory. Because of this amount of telegrams between plc and inverters not that small. And MODBUS master can be only one in one PLC, so you cant divide your Inverters between 485-modules (like mitsubishi protocol). 

     


  13. 20 hours ago, kaare_t said:

    You are using a total of 7 IVCK and 1 IVDR. I see that you have noe sequence control over them, I'm not sure if this will work since all of them will be triggered at the "exact same time", but since you are testing it right now it obviously works. I'm not sure how Mitsubishi has implemented the two instructions in the CPU, but since you got it working it seems OK. In Modbus you will have to make a sequence that runs through each telegram one by one, and not all at the same time.

    But if we look at what you've got working now, I suspect you only send the IVDR once, and the 7 IVCK are sent all the time. You've got 4 inverters in your best case and 7 IVCK per inverter. That's a total of 28 telegrams for a cycle. Now, if we divide 1 second cycle time by 4 inverters we got 250ms per inverter. Then, divide 250 by 7 and you've got 35,71ms per instruction. I would say it's within the normal range.

    Now, your problem here isn't directly connected to the serial bus speed. It's more the number of transmissions per inverter. Even with Gbit TCP/IP you would have a problem if you sequenced 28 transmissions due to the time it takes to initiate, communicate and break down the link. What I'm saying is that the problem here is Mitsubishi's implementation of the IVCK instruction and that you can only handle one data at a time. Since you want to read out 7 different values, you should look at ModbusRTU and read all those 7 values in one single telegram. Let's say that the seven values are located at 30001, 30010, 30011, 30012, 30017, 30020, 30030. They are spread out, but what you do is to initiate i single read multiple inputs, with starting address 30001 and a count of 30. Then you will receive all the values between 30001 and 30030 and you simply only MOV the values that are interesting.

    Of course, sometimes we need to use multiple telegrams because the data we want to read are spread across large areas, but the whole point here is to avoid many small telegrams. It's better to transmit one large block of data than many small. IF it's possible to read out the values you need in one ModbusRTU telegram, then I would guess that you can lower the complete cycle time from 1s to about 150ms or so (this is only a guess).

    I really misscounted number of telegrams (forgot about PU/EXT/NET and Special monitor, and in last version i deleted Voltage part).

    There is now need to make sequence over them, they are working one after another. Like this - https://prnt.sc/mcrlp1

    But i get your point, there is still to many telegram (even if they working) to inverters. With the one or two inverters its works really well, but if its 2+ inverters....

    So i will tryout Modbus and will write results here. 

    Thanks for your response.


  14. 17 hours ago, kaare_t said:

    Per inverter: How many instructions do you execute in sequence? For example: 3 IVCK and one IVDR per inverter? Or other?

    What I believe is happening is the following sequence (based on 3/1):

    1. IVCK1 (frequency)
    2. IVCK2 (current)
    3. IVCK3 (voltage)
    4. IVDR1 (setfrequency)

    The problem here is most likely the number of transmissions or transactions. Each of them takes processing time, and many small is worse than one large most often. I would suggest you to consider changing to ModbusRTU which I believe all your units supports by default (alternatively if you're not sure then list all your equipment with full names). By using ModbusRTU you can probably read a complete block of data (e.g. above, you can put all 3 IVCK in one transaction).

    Can you specify a bit more regarding what your reading (all parameters/values)? You only have one IVDR, what is it for?

    I will share FB that i using in this project in this post. I dont need control in this application, only monitoring. 

    I will try ModbusRTU next week. 

    List of equipment: nine FR-A840 inverters and FX5U with 2 485 channels.

    I am using IVDR for writing special monitor parameter type. I want to monitor Temperature in inverter (HF3 - 96).

    Thanks for your response.

    FR_BLOCK.gx3


  15. 14 hours ago, Veganic said:

    Are you using the Mitsubishi function blocks and if so which ones?

     

    I am using IVCK (multiple times) and IVDR (once for special monitor parameter).

    8 hours ago, kaare_t said:

    Are you sending one telegram for send/receive data, or multiple telegrams for sending/receiving data? Normally the best option is to have one telegram per send/receive for multiple areas even if it means a total of more devices than actually needed if there are gaps in between the data you want to receive or send. To put it simple: If possible, create one telegram for send and one for receive per inverter, nothing more!

    Sorry but i dont fully understand you. As i said, I am using multiple IVCK (read) for each inverter and one IVDR (send). Can you describe it with example? 


  16. Hello everyone.

    When i was working with FX3U and did Inverter communication (Mitsubishi) by 485 (485-BD and 485-ADP) i've faced really slow connection when there was many Inverters (2-3+). Then i was thinking its because low speed of connection 19200 or 38400. Right now i am making project with 9 Inverters and FX5U. Speed 115,200. And still connection really slow (about 2-3 seconds on refresh data from FR). I divided inverters on 2 groups (5 on CPU's-485 and 4 on 485-ADP) - connection improved, but still about 1 sec. In the program i am only taking data (FREQ/CURRENT/VOLTAGE and DIGITAL OUTPUTS) so there is not so many operators that load connection.

    I need your advice. Can i improve speed of taking data? 


  17. Hello everyone. 

     I found a cheap encoder S48-8-1000ZT (1000 pulses) and connect him to FX5U's X0 and X1 (2 phase - 1 edge mode, if i can trust manual - it allows me detect all pulses below 200 kHZ frequency). Changed input response time to 10micro-s. I created a program that simply look at this counting and make some math. If i am rotating encoder with fingers slowly - all works great (my mark matches at encoder and 1000 pulses in program), but if i turn it by 1 sharp fast move and then again and again - marks move by half turn at for example at 10000 pulses. 

    So i need your experience. Whats going wrong? Is plc dont have enough response speed? Or something wrong with encoder? Or with my configuration?

    I need to use FX5U and encoder at 1500 r/min motor (with another encoder), so i need to test it before going on object.


  18. 14 hours ago, Veganic said:

    Set the parameters in GXWorks2.

    Download but check parameters only  - do not download the program etc.

    It isnt a bad way, but it would be better to keep all in one project (setting and prog).

    14 hours ago, collinsd70 said:

    Okay. So you have the final revision of IEC Developer.

    I normally prefer working in IEC Developer but in this case it might be worthwhile to upgrade to GXWorks2, you wouldnt need to 'rewrite' your code, simply just convert between the 2. 

    If you want me to take a look at this- send me a PM- otherwise I see no alternative unfortunatley.

    I've checked convert future, never heard about it before, seems interesting.

    And backing to the start of the story - there is no way to make setting by sequence program for invertor communication? Its is not working even for 19200 baud (but working when im making setting download). I did it before for RS2 instruction and it works well.


  19. 27 minutes ago, collinsd70 said:

    Is there anyone reason why you cant use GXWorks2 for this project?

    What version of IEC Developer are you using? 

    Yes, because its old big working project. It isnt worth time to rewrite project on GX Works 2. 

    v7.04.


  20. Hello everyone. 

    I am trying to cheat GX IEC Developer and set up 38400 baud communication between FX3U and FR-F700 via Inverter communication. In GX IEC Developer you can only set 19200 as max, but 485 communication in FX3U can be set up on 38400 and that works perfectly in GX Works 2. So, i unchecked setting in PLC parameters and using M8002 to write communication setting in D8120 (using CH1 485-BD) but that doesnt work. I tried many ways before writing this and i need some help. 

     


  21. 15 hours ago, dunc said:

    in GX works; is there any way around reading a structured project from a Q series CPU if the symbolic data (which takes up loads of room) isn't downloaded to the CPU initially?

    If symbolic data havent been downloaded - you cant. 

    But if this is small project (but i doubt because you are using Q series PLC, so it seems not the small project) you can simply recreate program by youself in Structured LD by reading MELSEC IL or if this PLC supports GX Works 2 - Simple LD. I did it once (when i have a little free time). Its simple to understand which addresses GX IEC Developer/Gx Works using for local  variables. So it isnt hard, only depends how much time you have.

    13 hours ago, collinsd70 said:

    I always thought you could read from the PLC's internal memory- but the code is always presented in MELSEC Instruction List.

    Mostly i am working with FX series. In GX IEC you cant download symbolic data in FX PLC and as a result you can upload only in Melsec IL. In GX Works 2 - you can download Symbolic Data and then upload Structured LD porject (or if didnt download - upload in simple LD). But i believe you can download Symbolic Data only in newer version of PLC (for example for FX3U it must be 3.10+ version of PLC), but maybe i am wrong.

    15 hours ago, dunc said:

    siemens and allen bradley can manage this without having a huge CPU for a relatively small program, why cant mitsubishi?

    I always thought it something for protection data from uploading. You must have Structured Project if you working with this PLC or you should write your own project.