1771-DB Report printout

Tom56

Member
Join Date
Dec 2004
Location
Toronto
Posts
7
Hello all, We have a 1771-db basic module connected to a Plc 2\30
that prints out a report for good parts, bad parts, faults etc. It's currently set up to run a report for 2 shifts /12 & 24. My supervisor asked if we could change it to print a report for 3 shifts. Can this be done? I have very limited knowledge working with this dinosaur stuff. Is the answer within this formula:
K=(FLT(6)/14400)*100 : KT=K*(480/((BTW(57)*60)+BTW(56)))
I would appreciate any help scoring a brownie point.
Thanks
 
WOW, dinosaur stuff! That hurts!

Tom, you might take a look at this link for some understanding of the basic language.
I used to do some BASIC programming back in the day, in between slaying dragons and such. I once wrote a program to rescue damsels in distress, but never found the proper castle with mote to test the darn thing.
But seriously, the line of code you posted is not sufficient for me to really give you a definite answer as to expanding the report to 3 shifts. The line you posted is actually two calculations. One for the variable K and the other for KT. The : separates the two functions on the line so they are treated as separate items by the BASIC interpreter. Or did the 1771-db basic module use a complier? I forget. After all it was a long time ago and far, far away. Sorry, could not help that little digression.

Is it possible for you to post the complete program? That would give many of us a chance to see if we can determine just how the report trigger is built in the program. There are many viewers and contributors to this forum that could have BASIC background. Although that list is getting shorter every year. Man, dinosaur, that is a wake up call!
 
the thing is..

if this program has been running for some time (hint: 2/30)
consider that the file might be burned onto an eprom.

You'll have to bone up on editing this beast.

As I recall, there were CALL commands you have to issue on
the command line to get things to store to the eprom, etc.

And, you'll need a serial terminal emulator (I always used
CrossTalk for DB modules...it had a 'delay after sending
CR/LF feature) program for archiving files.

ELSE:
You'll need the tape recorder, etc.

AND
Back-in-the-day, there were c-program front end processors
that could burn non-BASIC programs onto the eeproms
of DB modules for specific uses. You might have one of these,
in which case you have a whole other kettle of fish.

Good luck, and let us know how this all works out for you.
 
Here's the complete program attached. I recently had to 2 finger type the entire thing back in the module. No eprom. I'm off to look up some QBASIC stuff... scary....
Best regards Tom
 
Scratching head time!

It has been way longer than I had imagined since I did any BASIC programming. I only saw an old DB module back in the 80's and never got to do any programming with it. However, I did download your posted program and looked at it. I also went to AB.com and downloaded the DB programming manual which you will need and it is publication 1771-um113_-en-p and it is in .pdf format on the AB site. If you can not find it, come back and let me know, I will guide you to it. They have changed their manuals online listings and it is now called literature. Well, I suppose it is. No offense to Shakespeare. Anyway, I have not figured out what the original program does in total, but I can see that the fellow who programmed the thing, knew what he was doing. I may not be able to help you figure out how to make the program do what you want. That is out of my realm of expertise, I am afraid. Now, ladder logic, that is another thing altogether. I will be glad to continue trying to help out though, if I can be of assistance.
 
Hmmmm

Thanks for your efforts. I have the manual but I don't read dinosaur, hehe. Maybe I'll do the usual smack and hack see what happens when I do this program enhancement stuff.
 
Lines 5-1020 have to do with the info passed back and forth with the block transfers (only way to communicate with the 2/30)

1030-2035 looks like there is some data being stored to retentive memory in the db module

and the remaining code is the different reports that can be generated. Looks like the calculations you want to change may be in here.

Been a little while since I worked with a DB module and a 2/30. Bad thing about this version of basic is that your variable names can be only 2 characters. I would suggest adding some comment lines in case you ever have to look at this again. Be aware though that every line adds processing time. The code scanner executes a line of code and then starts at the very first line and scans down to the next line to execute.

fwiw
 
jstolaruk wrote: Bad thing about this version of basic is that your variable names can be only 2 characters.

This may be nit-picking but variable the variable naming convention is a function of the 8052 and variable names can be longer than 2 chars.

The issue is as follows, the BASIC interpreter uses only the 1st and last characters and variable name length to determine which variable to use. Meter and Motor, for example, are the same to 8052 BASIC.

(8{)} ( .)

(Yosi)
 

Similar Topics

Preface: Kinda long, so I made section titles Intro: I just want to see if anyone here has seen anything similar. A PLC5-40 series C enhanced...
Replies
3
Views
386
Existing environment shown in attached photo (Existing.jpeg) Proposed Environment shown in attached photo (New.jpeg) I am migrating a PLC5 system...
Replies
0
Views
606
I have a 1756-L81e v32 using a DHRIO v7.001 in RIO scanner Driving (7) 1771 ASB Modules @ 115k baud. The Racks RPI are set at 48msecs. This system...
Replies
2
Views
917
Hello, I am setting up for practice and I am having trouble seeing the 1771 Scanner in RsLinx as well as Rsnetworx My setup: slot 0 : PLC-5/40E...
Replies
3
Views
991
Does anyone know the part number for that plug that plugs into the 1771 devicenet scanner? The manual just says it is a linear plug, its 5 pins.
Replies
3
Views
1,066
Back
Top Bottom