Search the Community

Showing results for tags 'citect'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Found 30 results

  1. Hello All,Does anybody know the correct syntax for the following:-I have a genie with variable A getting passed inI want to use this as a prefix for a variable address to send to a function.function ( %A% + _variable)(_variable being the rest of the address)So if genie variable A was 05 the tag value sent to the function would be 05_variable.Also, I would like to off set the A variable by 4Sofunction ( %A% - 4 + _variable)so would actually send value from 01_variable if the genie A was 5.Hope that makes sense, any help would be greatly appreciated as I've being trying various different ways and cant get it to work.Thanks,Tom
  2. Who Have Someone connected Citect with Omron CJ2M CPU32 ? Can i use it? Device communications wizard -> CJ Seres PLCs -> Ethernet    or need to Finsgateway software.    [Setting] 1. Boards TCPIP / 0(Address)  2. Port -I192.168.100.10 -P9600 -U (*PLC: 192.168.100.1 , PC: 192.168.100.51) 3. I/O Device 0/1/1/      /   OMFINS3    [MANUAL]  ----> Fallow the manual ONLY CS1, CV Need to setting  w/n/u/V  or w/n/u/S CJ2M do not need to this setting ?       I/O Devices Form Complete the I/O Devices form as instructed, with the following specific information. I/O Device Address The station address for an Omron CV Series PC is specified as follows : w/n/u/V for CV mode or w/n/u/S for CS1 mode where w is the FINS network address (1-127) n is the FINS node number (1-126) u is the FINS unit address (0) There are no defaults for w, n, or u, but if you do not specify a mode (with a V or S), it will default to CV mode. The FINS node number should be the same as the IP address node number. The FINS network number should be the same for all ETNs on the Ethernet segment. There is no relationship between FINS network numbers and IP network numbers.   Thank you..
  3. Vijeo Citect - write to tag - error

    Hi everyone.  In Vijeo Citect SCADA I created some tags and I try to write to a bit device of MELSEQ Q PLC. But I get this error : Cicode General software error. Note: I can read from PLC.
  4. hi guys.  I am getting a server problem while communicating pc & scada . is there any solution to rectify it? or problem is in license? thanks in advance
  5. Hi every body. I want to get and set Time Picker value in process analyst in citect scada using cicode. Also  I tried to find an event or function when time picker value is changed , is called but find nothing. May you help me please?
  6. Hello. Recently I created two projects which I later connected with INCLUDE property. Let's say we have Project_1 and Project_2. In Project_1 I include Project_2. Everything works except Trend Groups. The only trend group which is working is the one in Project_1. I know I can copy Trend Group definition to Project_1 but then these two projects are not independent anymore. Did someone come to some kind of solution? Thanks
  7. Our site currently runs Citect 7.4 SP2. We have a redundant server set up, with about 5 - 6 Clients and growing to 8 clients this year.  I'm new to the industry, been in it for about 3 years but I'm getting the feeling Citect may not be as good of a solution for us as something like Intouch looks to be. We are a Batch Process, Food Manufacturing Site. Citect came about years ago by a local sparky installing it as being used as a stand alone, small, simple, <500 point, HMI and Alarm viewer for a piece of original plant which has now grown to multiple plants (Same site different process areas) and 5000 points, which will need upgrading soon. I haven't used InTouch myself, but most other integrator's I come across are always like "Oh, why do you use Citect?", also almost all local integrator's use InTouch, which looks like it has much better add-on packages, support and graphics. We're not there yet, but we're continually moving to try and become a full S88 plant and I'm just starting to think do we jump ship now? I see Schneider have acquired Invensys, as we have System Platform to use the Historian with our Citect System. Just interested to see what people here, particularly if you're familiar with both, thought about the two? Citect is ok, but InTouch looks like a much better solution.
  8. Hello, We have this SCADA system Vijeo Citect 7.2 running in Windows 7. Primarily used as generator's alarm history & monitoring. PLC: OMRON C200HG All communications are good but DIGITAL data (alarms, bustie) from OMRON is not updating in real-time. (Need to restart the Vijeo Citect to make it work).  While BCD & LONGBCD datatypes (voltage, speed current) are working good and showing real-time *OFSVIJEO: INT datatypes are also working good. Protocol UNITY         MODNET30 OMRON      OMRON OFSVIJEO  MODCELL  
  9. We are communicating FX3GE PLC with Vijeo Citect SCADA. We tried various protocols such as MelsecNET, MelsecFX2N, Melsec1, etc. If you know how please help.
  10. Citect: Displaying IO device comm. Error

    Hi guys, In my current project, I have a number of energy meters (128) communicating on Modnet (TCPIP) with Citect as different IO devices. I have a screen, where I wish to display the communication status of each IO device. If there is an error communicating with a particular I need to associate a tag for displaying the same. Can someone guide me how to accomplish this.   Thanks for looking in.
  11. Hello, I am responsible for implementation of Vijeo Citect 7.4 SCADA in my company. I want to connect to Beckhoff PLCs by using Twincat OPC Server. I can control and observe the variables through OPC Control tool, but when I add the device and variables to my Citect aplication, they are always equal zero. I cannot also force through Citect to change the value. I don't know where the problem lies. If you need additional information, please ask me. I will provide you with all the data I have. Thank you in advance. beckhoff_opc.bmp
  12. in Citect i use the following function to associate various Tags with the next popup window, in the previous versions the tags passed to the trend fine since upgrading to 7.4 the trend pens dont display but all the values display fine.  FUNCTION // function AssPIDPopup // Expand a full set of PID tags and open // the PID block supergenie AssPIDPopUp(STRING sSGenie,STRING sBasePIDTag)     AssVarTags(-2,0,sBasePIDTag + "_PV");      AssVarTags(-2,1,sBasePIDTag + "_SP");      AssVarTags(-2,2,sBasePIDTag + "_OP");      AssVarTags(-2,3,sBasePIDTag + "_MAN");      // Now the tags for the PID tuning SG     AssVarTags(-2,4,sBasePIDTag + "_KP");      AssVarTags(-2,5,sBasePIDTag + "_KI");      AssVarTags(-2,6,sBasePIDTag + "_KD");      AssPopUp(sSGenie);      END I added a button to run the following code FUNCTION Loadtrend()     TrnSetPen(19, 1,  AssInfoEx(1,0));     TrnSetPen(19, 2,  AssInfoEx(2,0));     TrnSetPen(19, 3,  AssInfoEx(3,0));     Prompt("Test");      END     when clicked the pens set to the trend fine, i tried to run the code from a function but it did not work. i am new to citect and am sure i am missing something stupid.
  13. Hello there. I have connected wireless module (master) to Vijeo Citect 7.4 using RS-485 to USB converter. My slave modules are supplied power from gird/generator and the master module is supplies from a UPS.    I'm reading Modbus registers of slaves modules data via wireless master. Every time we have a power failure from grid, I get #BAD from all slave addresses. The generator kicks off within 30 sec. That is the slaves are off for 30 sec. Even after the slaves are powered on, SCADA does not poll data from it until I restart the SCADA.    My current MODBUS parameters are:   Inittype = 3, TimeOut = 3000, WatchTime = 10, Retry = 2. Could you please assist me on which parameters to change in .ini so that SCADA reads Modbus registers of slave for more than 30 sec.   I tried increasing TimeOut to 30000 but it couldn't solve the problem. I would appreciate if some one could help me out.   Thanak you in advance.      
  14. Hello all, I'm working on existing project with Citect scada V6.0. My actual HMI communicate with my TSX P57 threw OFS. It works fine. I've a new project about linking Citect with 1 Wago PLC, using modnet. I've created a new project for that, out of my actual project. It's working fine too. I can read all the modbus TCP datas of my wago Unit.  My problem is now integrating my wago project into the actual. I include it into, but it does not work. To resume, If i use the only actual project, I can watch my data on the screen threw OFS; I i use the modnet project alone (after configuring the citect computer setup), i can wath my wago data on the screen. If I use the both project together, (including modnet project in the actual), modnet data are not linked. Any ideas to help me? thks all
  15. Hello Everybody, We need to get Toshiba PLC to communicate with citect directly via ethernet. I have attached a photo of the PLC we're using..V series. Really appreciate any input on this matter (regarding the right drivers for this series)...Thanks alot!
  16. hi i am using vijeo citect 7.4 i generate a report automatically using a triger but the report generated in the .rtf form which any body can change the values in the report so i want to either make the report in the read only form or convert it automatically to pdf + i ' ve another problem i am tring to write a string in the report using the form {tag_name:############} where the tag_name is a variable string memory where i store in it a word "starter" when the report is generated only two letters "st" is generated can any body give me a solution for these two problems , thanks in advance .
  17. I'm having a problem creating variable tag array in Citect SCADA V7.40. I looked every possible help, user guide... but no matter how i set array I cannot change value of any element of array beside first one. I configured my variable tag as shown below: Tag name: TestArray I/O Device: Internal (it's an OPC Factory Server) Address: V500[5], %MF4000[5], I2[5], F2[5] (I tried every one of these for REAL or INTEGER type based on user guide/forum posts) Data type: REAL, INTEGER   I tried every one of these but without success. If i try to set value of variable tag array element, example TestArray[1] and TestArray[4], by typing value in Number field (in Citect Runtime) every element of an array is giving me message #ERR, except first one. Other than that in Citect Runtime in All variable tags window, I can see TestArray tag as a single tag, not as an array Note that i'm not using these tags in Cicode but in Graphic Builder / Runtime. I need about about 50 user defined value tags to be sent to SQL DB by SCADA so remote PLC can read those values in order to define state of outputs. I would highly appreciate any kind of help, any tip. Thanks in advance!
  18. Hi All: I am new to Citect and looking for a way to create 1 page that has 25 valves (genie that pops up a super genie) and some analog genie/super genies. What I want to do is create 1 page and dynamically replace everything when someone selects a different rack in the system. I have 4 systems that have the exact same equipment times 10 so I want to avoid creating 40 different pages. Can anyone help with some ideas on how I can accomplish this? Thanks M
  19. In my present project, I have to interface an energy meter that has its kWh count in 64 bit Double format. Now that Vijeo citect hasn't a facility to create tags of the "double' type I am looking for a work-around to this problem. Thanks for any help/advise in this matter
  20. Hi friends, The scene is like this... I have some 200 energy meters whose readings are continuously logged at 15-min intervals into a logging table. The meter does not have any other value logged. Let's consider these readings as analog tags. However these tag values are continuously increasing to ever larger numbers. Thus we have a problem for display on trends. Customer now requires that the Citect shows usage trends for any meter for a specified period of the past. That is to say, the meter that he wishes to observe is selected - along with a period typically between 2 dates (perhaps also with a sampling period) - and the trend must appear. So in other words, given a single trend object, how do you make values appear for any selected tag on this trend. Perhaps this can be overcome by some genie/super-genie mechanism. My approach to this is...For the selected meter, I use SQL to query the 15 minute logged values (also taking into account the required sampling period) taking the reading on starting date as initial. All values thereafter are subtracted -within the SQL query- and the result of this query is kept in a 2 dimensional array(x for time, Y for value) or a new database table so that the trend displays values starting with zero. This much I can do with Cicode. After this, I need a method to display the values so obtained in a trend object. Essentially this is the same as feeding a trend object with a set of X & Y values that I have in the form of an array or in a database table. I shall greatly appreciate any help to meet the above objective. Thanks for looking in. With best wishes.
  21. Hi, I'm wanting to know from anyone using Citect 7.X and above, about how your systems are set up when using a primary/secondary redundant server setup. With the advice from some consultants I've changed from a couple of stand alone units to a redundant server setup and multiple clients plant wide. There's about 8 PLCs currently with more coming. However it was recommended to split the IO server of Citect over the two physical servers, so that 1 physical server is the Primary IO server for 4 PLCs and secondary server for the other 4, then the other physical server has the same setup just opposite Primary/Secondary setup for the devices of the first physical server. I get that it splits the work load, but our engineering team is updating the servers multiple times a day most days and we will be for at least the next year, I'm finding that this system isn't very friendly constantly shutting down and restarting etc interrupting trending also, and want to switch from this split IO Server setup, to just one server that's primary, one server that's secondary. My Question, is it fine for one physical server to be primary and for how many PLC's? Server is a 6 Core Intel 2011 socket CPU (Not sure on exact specs at this stage). System INFO TAG count is about 5000, and Manufacturing is a slow process so no need for split second updates on anything. about 500 Trends polling every 1 second. Cheers.
  22. Hi team, The installer i am using is an old installer. The guys on site do not wish to upgrade the Servers at this stage (I don't think they will be doing many modifications anyways). It is v7.10r1 SP2/SP3. I cannot seem find the SP2 installer on the net for Citect 7.10, at least Schneider does not seem to supply it? (screenshot attached). If I install and use SP3 on the engineering workstations, will this still be OK to deploy to the Servers running SP2. I can't really foresee any issues? Cheers.
  23. Hi friends, I have this need to declare a few arrays of string variables and intialize them with a particular value, in Citect. In citect, on the forms for variable declaration, there is a place given for entering the array-size. In the case of other data-types such as INT or REAL, entering a number here will imply that the declared variable is an array with the size mentioned in the Array-size. In the case of string variables, the array size represents the size of the string ie. one element for 2 characters. If we declare the size of the array as an extension of the variable name, such as StrVariable_array[30] then Citect throws up a compile error. We are of course able to declare an array of string variables in the cicode editor, but then this is not 'Global' for use as variable tags. So the question begs.. How do you declare an array of string variables, preferably using local variables. Thanks for looking in, regards and best wishes.
  24. Hi Guys, I wish to know if there is a method by which one can use string substitutions in Cicode functions.. It is a very useful thing, when used with structured tag names. In my current project, there are 200 Energy meters, each having 8 tags, hence 1600 tags. Each group of 8 tags has the same pattern ie <prefix> being the identity of a given meter. <prefix>_Vavg, <prefix>_Iavg, <prefix>_MaxkW, <prefix>_kWh, <prefix>_kVAr, <prefix>_kW, <prefix>_RunHrs I wish to log this data onto a SQL database table named "METER_LOG", carrying out the logging actions for each meter in a record, that has these fields(Columns) |Meter_Id |----|Vavg|---|Iavg|----|MaxkW|----|kWh|----|kVAr|----|kW|----|RunHrs| My goal now to do this in a loop, so that all the logging actions are done with a few lines of code. There is a table-"METER_IDs" that gives the list of all Meter_IDs or <prefix> And the code I wish to implement is a cicode function that would look like this.- It is not correct, I've used genie substitution syntax and that won't work here. FUNCTION LogAllMeters() int hSQL; string %Cur_ID%;// --This is the string that will be substituted in the loop hSQL = SQLConnect("DSN=<DSN_name>; UID =xxxx; PWD=yyyy"); IF hSQL <> -1 THEN Status = SQLExec(hSQL, "SELECT Meter_ID FROM METER_IDs ORDER BY Meter_ID"); IF Status = 0 THEN WHILE SQLNext(hSQL) = 0 DO // --Scan till the end of the list for all meters %Cur_ID% = SQLGetField(hSQL, "Meter_Id"); INSERT Into METER_LOG VALUES ( %Cur_ID%, %Cur_ID%_Vavg, %Cur_ID%_Iavg, %Cur_ID%_MaxkW, %Cur_ID%_kWh, %Cur_ID%-kVAr, %Cur_ID%_kW, %Cur_ID%_RunHrs); END SQLEnd(hSQL); SQLDisconnect(hSQL); END ELSE SQLDisconnect(hSQL); Message("Error", SQLErrMsg(), 48);END//----outer IF End// of FunctionI would greatly appreciate it if someone could guide me with a way to substitute strings so that the structured tags are correctly referenced inside the loop. Thanks a million for looking in.
  25. Hi All, I'm adding a system to my current project which is used to keep product labels correctly moving around the plant (On Screen) and then end up in their correct destination silos and stay there until manually cleared. The labels are determined by referring to an INT in the PLC DM register for that particular part of the plant and then references that to a preset String Variable Tag to display. Now I've made a Genie that is to be attached to each Silo which opens up a small super genie which will just have - a Title, - the label of the current product in the silo(Var Tag), - a label of the previous product to be in that silo (Var Tag), - and a button with a function that I've written to clear that particular label and then store the current label value into the previous product label. The function in the button works fine on it's own but the problem is I'm trying to have it so that I can just pass through the arguments to it from the original genie, but I have had no luck trying to do this. The function in the button is as such: Previous_Label(INT Current_OilCode_tag, STRING Previous_OilCode_tag) <these are the correct data types for these tags as set in citect. Which when I Set it up in the SG is: Previous_Label(?INT 1?, ?STRING 2?) In the genie Itself im using AssMetadataPopUp() and I'm just setting it up in the Metadata Section as: - Name: 1 Value: %Current_OilCode% - Name: 2 Value: %Previous_Oilcode% As said it works if i just set the button up on the Silo Page (Outside of the SuperGenie) and use it there, but having the button in the SuperGenie and trying to pass the Variable Tags into it has been a Nightmare. I should note that I went to the lengths of just Duplicating the button 20 different times and the function also was tweaked to just work for one silo each, then set the Hidden When field to: ?INT 3? <> 1 (For Silo 1 for example) then just having all of the buttons on top of each other in the SG, but much to my frustration this also did not work as all the buttons were hidden, I believe that this is because for ?INT 3? I was simply just typing in 1, not an actual variable tag so I am yet to test this. Hopefully someone here can perhaps spot something I'm doing wrong. Also I can upload the actual codes, I just don't have them on me right now. Many Thanks.