Mark V logic (Csp.prn)

H

Thread Starter

has100

Hi all,

I have few queries related to MarkV logic modification and CSP.PRN file

1. How to modify the logic in the CSP.PRN file. Suppose if i want to add any NO/NC contact or any block, how can i add it?

2. Can anyone share the example CSP.PRN file of two GTs and two STs running in isochornous or droop mode ( one pair in droop and other pair in isochronous monitoring each others status) and the functionality is controlled by master controller?

3. How to convert the CSP.PRN file into the PDF document? So that it is in more readable format?

4. i have read that adding IO to QD core means TMR, but adding IO to CD core is simplex. Can anyone explain how?

Regards,
Has100
 
I think that you are a bit confused about how MKV works. CSP.PRN is a utility that prints the CSP as it is. If you modify the CSP then you can print the new CSP using CSP.PRN (you don't need to anything to the PRN file). So you do the mod to the CSP (add input,etc) and the CSP.PRN will reflect the mod.Take a look at post http://control.com/thread/1373871947

<Q> is <R>+<S>+<T> so you are modifying 3 controllers so it is TMR
<C> is only 1 controller so it is basically Simplex.

Most of what you ask is in the 3 main MKV manuals (User, Maintenance and Application). I think you need to do some reading.
 
Peace,

so just want to say that the csp.prn is an image of all the segment logic files that you have (ex: seq_AUX, seq_trb; seq_PRC...). so if you want to modify a segment of the logic, open it with logic editor and make your modification. after that you need to make a compilation (open command prompt window and tap "mk5make"). when the compilation is completed, you can now generate a new CSP.prn file by tapping in the command prompt window "seqdocmt" thats all.

i hope i answered your first question.
 
has100,

2) For two machines to run in Isochronous mode would require both machines to have Isochronous Load Sharing, and that's just a de-tuned version of Isochronous speed control mode which requires some analog signals to be shared between the two Isochronous machines. It's not a great way to run a plant and supply an isolated ("island") load.

The better choice would be to run all machines in Droop speed control mode with an external "Power Management System" which can send signals to any of the four machines to raise/lower speed reference as necessary to maintain frequency while supplying a variable load (motors starting and stopping; lights on and off; etc.). Let the PMS do all of the "hard work" and just output RAISE- or LOWER SPEED/LOAD signals to the four units as configured by the PMS vendor (which unit(s) get loaded first and which units are "standby", etc.). Much easier than trying to make Isochronous Load Sharing work on the Mark Vs; MUCH easier.

3) CSP.PRN is an ASCII text file with some special characters to send page breaks to the printer when "printed." It's formatted for US A size paper (8-1/2" x 11"), using a fixed-pitch font (fp_csp, a GE proprietary font which is VERY similar to MS-LineDraw), and characters that can be recognized by a HP LaserJet II compatible printer. (If you are working with a GE Mark V HMI running MS-Windows, you may be able to use the MS-Windows Control Panel Font applet to find fp_csp on the HMI's hard drive and copy it to the PC you will be using to format/print the document.)

You can use MS-Word or any word processor (including MS-Wordpad), set the rulers for the page size appropriately for the paper you will be using in the printer, and choose an appropriate font. Remove the HP LJ-II characters (they are at the beginning of the document, and also at the "end" of every page--it's the ankh symbol) and then you can use any PDF printer to print the document (Adobe Acrobat; PDF995; etc.) to a file, or to a printer. (I recommend printing to a file first to see that it looks like it's worth printing (the formatting and font choices are correct), then printing a few pages at a time to the printer to make sure everything is working correctly. In fact, I always print about 40-50 pages at a time, just to make sure nothing gets "lost in the translation"--meaning no paper gets unnecessarily wasted.)

4) When a single input device (like a single pressure switch, or a single T/C) gets terminated on one of the <Q> I/O terminal boards, it generally gets "fanned out" to the three control processors, each of which use the signal in the control and protection of the unit. Most of the <Q> I/O terminal boards (with the exception of the QTBA terminal boards on each of <R>, <S> and <T>) have three cables to take the one signal to each of the three processors. (Just because an input terminates on one of <S>'s I/O terminal boards in Loc's. 7, -8 or -9 does not mean that signal only gets connected to <S>. Only the signals terminated on the QTBA are connected only to <S>.)

The same is true of most outputs--with the exception of the servo-valve outputs.

The same is true of the discrete inputs and -outputs connected to <QD1>, and <QD2> if so equipped.

In this way, a single input (or output, as the case may be) is used by (or written to (controlled by)) all three processors, so that if one processor is unavailable when the unit is running the unit will continue to run.

I/O connected to <C> and <CD> are usually associated with a single processor--<C>, and while they may be used by or written to by <Q> (most are, by the way) when <C> is unavailable those I/O are unavailable to <C> or to <Q>; there is no redundancy (unless there is a <D>, which is a whole 'nuther story!).

Hope this helps!

Do have a read of the manuals; while they are great sleeping aids, they do have some useful information. There are whole sections with flow-charts devoted to many more "common" functions. (It must be noted that the manuals were written in the early days of the production of the Mark V and were, unfortunately, not updated. One of the glaring errors is that any command line executable now requires the user to supply the unit number (a two-character value) in the command line so that the proper unit in a multi-unit arrangement will be "contacted" by the executable. Most command-line executables, like VIEW2 and EEPROM and many others all have 'Help' screens which can be used to see how the command requires the syntax to be entered--and mostly it's just the inclusion of the two-character unit number (even if there's only one unit on the StageLink).)
 
Thank you all for your replies.

I am using the Mark V sequence editor for modifying the logic. Most of the logic is based on ladder logic. But there are some places in logic where there is a frame and it contains some signal names. When i check the csp.prn file, i found that the Frame has Sub-Rungs or rungs inside it. But i don't know how to view the sub-rungs in the sequence editor. Could you please guide me in that?
 
has100,

The Control Sequence Editor is not capable of displaying all Big Block internals for the various types of Big Blocks (algorithmic; sequencing; primitive). This is described in the manuals for the Mark V (Maintenance Manual, GEH-5980; Application Manual, GEH-6195).

The Control Sequence Editor is just a means of configuring and constructing the CSP--the Control Sequence Program. The various CSP Source Segment Files to be used in any CSP to be compiled and downloaded to a Mark V turbine control panel are specified in MSTR_SEQ.CFG. The CSP Segment Source Files are created and edited using the Control Sequence Editor. When the CSP Compiler is run, it uses the CSP Segment Source Files listed in MSTR_SEQ.CFG to create the downloadable CSP Partition.

The Dynamic Rung Display can be used to view the CSP--either when connected to a Mark V, or not.

The CSP Documentor creates the two printable CSP files: CSP.PRN and CSP_XREF.PRN.

If you're trying to learn "Mark V" without reading the manuals, it's very difficult to do so. It's even difficult to learn by reading the manuals.... but they should always be consulted--as with any technology--when learning and expanding one's knowledge of any subject.

Hope this helps!
 
Thanks CSA.

I am referring to manuals also for learning MarkV. But i get quick and to the point replies from this forum.

One last query is Can we use the same signal name for instance L52GX1 for Contact Input and as well as Contact Output. Is there any issue in doing this? Similarly for Analog input and Analog output also.
 
Check the manuals again! First thing you should do before creating a signal name is check the UNITDATA file to make sure the new name is unique.

Sure, you can lean a lot from the forum, but you really can learn a lot more from the manuals.

See Application Manual Sect. 8 for more detail
 
has100,

Machines, a programmable automation controller--the Mark V in this case, are very literal devices. In the case of the Mark V, to use the same signal name for both an input and an output one would have to make those assignments in IO.ASG and I believe the compiler would generate an error when trying to use the same signal name as both an input and an output. I've never tried it, but even if the Mark V developers didn't write the compiler to check for duplicate names I think the microprocessors would have a very difficult time understanding what to do with "instructions" to use the same signal name as both an input and an output.

I think it would be like using your phone to call the number assigned to your phone. If you were calling for help answering a question, would you trust the person who answered (if you could answer the call, of course). (This is a rhetorical scenario, as the phone company computers are programmed to know a call to the number placing the call can't be answered.)

There is one exception--and that's the <C> mA outputs. They aren't assigned in IO.ASG, but rather via MAOUT_B.SRC. So one could actually assign a mA input to one (or even more) of the <C> mA outputs, and that's often done with DWATT for example, even other inputs like speed or T/C- or RTD inputs can be assigned to <C> mA outputs--even discrete inputs or -outputs can be scaled as mA outputs (though that would be an extreme example and not a very good use of a mA output).

But, while the manuals don't have all the answers they are still a decent source of information and some things like using the same signal name for both an input and an output should be considered like using your phone to call your phone's number. What's the point?
 
Top