Search the Community

Showing results for tags 'function'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Found 52 results

  1. Version 1.0.0

    18 downloads

    PRNG algorithm packed into a functional block. As an example of using ST language for Omron CJ series PLC.
  2. Function block RANDOMIZE on ST View File PRNG algorithm packed into a functional block. As an example of using ST language for Omron CJ series PLC. Submitter drYurban Submitted 10/05/22 Category PLC Sample Code
  3. Version 1.0.0

    6 downloads

    An example on ST is the definition of the fronts of a discrete signal.
  4. Function block on ST for algorithm DIFU DIFD View File An example on ST is the definition of the fronts of a discrete signal. Submitter drYurban Submitted 10/05/22 Category PLC Sample Code
  5. valve_control

    Version 1.0.0

    8 downloads

    A working example of an FB to control a valve from an HMI panel. Controls closing/opening times, plus a little visualization.
  6. valve_control View File A working example of an FB to control a valve from an HMI panel. Controls closing/opening times, plus a little visualization. Submitter drYurban Submitted 10/05/22 Category PLC Sample Code
  7. GX Works3 Projectlib Locked

    Hello, I have a problem that I need to solve in a PLC program has it's projectlib locked.  I work for a company that contracted a PLC programmer before my time to program their new version of their control cabinets. The company did not write any specific contract with the contractor and just relied on his work. The guy later delevered a buggy software that is kind of functional (the bugs came up at the commissioning after the guy was paid and now he refuses to help or to provide more consultations). I have as a task to freshen this up and make it work without bugs, the problem is that the Projectlib is locked and I cannot access the source code.  The only thing that I can changes that I can make to the code is to put some logical circuits between the I/O of the already existing function blocks, which solved some problems, but not all and it keeps one of the most important ones as well. Anyways, that's my story, so now my question is, is there and possible way of unlocking the projectlib? Any feedback would be highly appreciated. Thanks in advace!
  8. Hi, I have quite a noobie question. I want to create a function block to do some simple operations on 2 variables. Both variables are In/Outs (see picture attached). How can I make this function accept variables regardless of the data type? Given these is just simple math I am able to use the same instructions in REAL, INT, UINT, etc. But, the function block only lets me assign one Data Type to the In/Out variables.
  9. Delta isp fb

    Does anyone have some delta isp function blocks they can share with me please
  10. hello Every one,    I am using a CP1-L PLC and want to communicate to domino ax350i printer over TCP/IP socket programming. For socket programming, I used Omron Function Block CPU012_SendCommand.  I defined network ID and node address. However, I am getting 0502 error which means routing table is not set yes. So, how can I set routing table for both devices?. my PLC on 192.168.250.1 and Printer is on 192.168.250.123 node 7000.    Can any one suggest me best way to do.  Thank you   attached file is for what I did in setting and program for the communication.      
  11. Hi there, I am fairly new to programming serial communications, especially with Mitsubishi PLCs. Can someone walk me through in ladder logic how to bring in ASCII to the PLC, store the data in the data registers. Then send the data out to another PC once an 'X' input is satisfied? ASCII code would go like the following: C2,0,1,123,2,ABC,3,456,CR
  12. Hello everybody, i have some uncertainties going through my head. i am fairly new in PLC word, graduated last year, last 12 month i did project on Siemens PLCs, but now i have to expand my view with Mitsubishi. 1. i am working on project with several conveyors. for each conveyor type i have FB fairly similar to my FB in siemens. For all conveyor i am using same sdt containing 32 bits. So a have array[0..20]  of said sdt. But in fb i was not able to copy item from array, through input var containing index of that item to vocal variable, which i wanted to write back to the array at the end of fb. I tried different approach ->  using item from array *** input/output.  When monitoring item from array i can see, that variables i change in got2000 panel are in fact changing. But when i monitor fb itself, those same variables are not changing. i reworked this fb several times, for example when i found out that FB variables FB FXcpu cannot be set as retain so i would like to use it and i see no other way than make this fb work. :D 2. Is there possibility to us FB in another FB? I remember that i read some restriction about this, but now, i cannot find it. Thank you everybody for your responses    
  13. Hello from korea :)   actually i am new to company which i do freelancer job and i am not used to dealing machine with sysmac studio its hard to make things perfect...   its just simple thing move servo motor.. you can check my situation more closer if u see the picture that i uploaded   i think control servo motor By function named MC_MoveAbsolute4(Axis,execute, parameters......) i just use that function by put them in while loop so that i can check the move of motor but nothing happen lol   What can i do!
  14. RSLogix5000 Transfer function Bumpless transfer between two inputs. If criteria or FLAG is true, then transfer from input-1 to input-2 at a prescribed ramp rate, and then release the output to match the selected input without rate restrictions.  Issue: The issue is that upon the status of particular input (FLAG), the control valve demand jumps from 0 to whatever the output of the PID’s Low Select value is (maybe 50% or 80% or other). Request: Ideally, I would like to mimic or replicate the Transfer algorithms provided in other control systems, as described below . The TRANSFER algorithm performs a transfer between the two inputs.  The output is equal to the IN2 input if the digital input FLAG is TRUE, and the IN1 input if the digital input FLAG is FALSE.  The algorithm automatically performs a bumpless transfer between the track input and the selected input when a tracking request is removed.  The algorithm ramps to the selected input (IN1 or IN2) at the specified track ramp rate (TRR1 or TRR2).  Internal tracking may be selected to allow a bumpless transfer between IN1 and the IN2 inputs.  Individual track ramp rates may be initialized to ramp from the IN1 to the IN2 and from the IN2 to the IN1. Attached is RSLogix5000 program "transfer.acd" Thanks.
  15. Hello, I am new to automation and I do a project with a Micro850 Plc. I am more comfortable with logic block so I write my program in Function Block langage on Connected Component Workbench software version 12. I would like to make flashing a light but I don't know wich block to use and how to program it ... Could you help me. Thank you
  16. Hello, In past i was using Siemens S7 300 and Simatic 5.3. So a long time ago. I restart look back to plc because i need to monitor the temperature of my heating system. So bought a plc that is a IEC61131-3 standard and  OpenPCS as Develop software.  So i begin to play with OpenPCS because  Im very rusty.  SO i create a function, that i named FC_TEST . When i compile the below code i get an error E: S5004: Function blocks instances are invalid in 'FUNCTION'-POUs, STRUCTs, and in ARRAYs.  It seams that Timer block inside the function FC_TEST are not allowed, i understood right ? (*  --------- DECLARATION  ---------  *) VAR_INPUT T_1 : TIME ; (*Declare T_1 as a Time Input ==> Set the Time of Timer *) START : BOOL; (*Declare START ad BOOL Input ==> Start The Time of the TIMER *) END_VAR VAR MY_TON : TON; (*Instantiate MY_TON as Timer type TON*)  END_VAR (*  --------- FC PROGRAM  ---------  *) MY_TON(IN := START , PT := T_1 ); FC_TEST := MY_TON.Q;   (*  --------- CALL THE FC---------  *) tmp2 := FC_TEST(T#2s, I0_0);  (* I0_0 is a input*) Thanks  Marco  
  17. I'm using simple function block, one input and one output, like in this example: Problem I have is how to call function block and use inverted (NOT) value , ie instead 5.01 I need to use NOT (5.01) . Of course I could create new symbols that are inverted values of actual inputs but i'm trying to avoid that, number of addresses is significant.
  18. To calculate a walking or moving average I want to use WSFT and SUM in a function block. Does anybody have experience with this? The idea is to take a 1 hour average of a proces value and store this average value each hour. The software then have to calculate the walking or moving average over say 4 hours or 12 hours with a maxium of 24 hours. See attached files with logic but then not in a function block     Walking_AVG.cxp Walking_AVG.opt Walking_AVG.bak
  19. I can debug my plc app with simulator. I created some function block, and inside functionblock I can inspect in and out parameters, as well as local variables. But in/out parameters values are not shown. Any solution? Im using Sysmac Studio 1.29.2 and selected a NX PLC in my project.
  20. Function Block addressing

    Hello all.  I have a program which has 8 function blocks. I recently added extra functionality to one of the programs (not the function blocks). I added the new variables to the global symbols table and added the new code, but when I compiled the new code, the variable addresses in three of the function blocks had changed. This is a problem, because we use memory cassettes to download new versions of code, so when the new version is downloaded to a machine in some far flung part of the world, these variables will be overwritten (they are hours run variable, so are important for servicing purposes).   My understanding is that CX assign's variable addresses in Function Blocks and we have no control over this. Bit if I only added variables to the Global symbol table, why are the FB addresses affected??   Any input appreciated. 
  21. Hi everyone, Using Cicode programming ... I'm try to make a function empressed Button's input command that still running forever until the user press the Button again .. so if i press the Button at first the function inside Button will be running , But i wonder to terminate that function by press same button second time or don't mind if you suppose other Button for stop running the function ... plz help to make a code or something else to stop running of my function.
  22. Pointer Device memory

    To those who don't know the GX Works2 compiler treats any function block referenced used in your code as a place to copy the entire set of code data into your program. Function block calls are not handled like pointers even though the should be. [You'll consume all your pointer space by thinking function blocks are great.]
  23. Hey, I recently started trying my hand at creating function blocks. At the moment I'm trying to create a PID function block, however I keep getting this error: "ERROR: Variable does not have enough size." No idea why it does this. Can anyone help?  
  24. Internal function block variables

    I have a function block where the first internal variable is showing as address H1420 in the Global Symbol table. When I add another retained variable to the function block then save and compile the code, the variable address in the global symbol table shifts from H1420 to H1488.  I need to retain the address as I will be downloading code and I need to ensure the address if H1420 stays with that variable.    Can anyone help with this?
  25. Omron Function Block variables

    Hello all.  I posted earlier in the week regarding downloading new code to an Omron PLC, but I think the question was a bit vague. As a follow up, and hopefully to clarify, I have the following query. I have created an upgraded program which will be downloaded by field techs using memory cassettes. The revised area of code is essentially a Function Block which amends service lamp behaviour, and in creating it, I have amended the existing function block and added new Internal variables. Is there any way I can ensure that the new variables don''t over write or move the existing  variables in the PLC, because this is what is happening when I download it.    HELP!!!!!!!!!