RSS .92| RSS 2.0| ATOM 0.3
  • Home
  • About ArchestrAnaut Blog
  • About Our Authors
  • Email Subscription
  •  

    aaOpenSource Continued

    If you’ve followed the comments posted on my previous entry you can see that there seems to be a lot of interest by some really heavy hitters on this topic.  In the interest of getting things going I will post a few of my ideas as well as some from the comments.  I’ll try to figure out how to create a poll that we can use where people can vote on which ones we should tackle first.  I think I may split this into two groups; tools and objects.  I think there is room for one group of people to work on engineering tools while another group works on objects with advanced functionality.

    Something to address from the comments that I think is critical to making sure everything is above board with this work.  Anything you do for this project CAN NOT BE DONE ON COMPANY TIME unless you get explicit permission from your company to contribute.  I’m sure others are much more schooled in the open source world than I but I certainly appreciate the angle that you shouldn’t be charging time to your company for work done on this. In a similar vein we must be incredibly cautious about reusing code that has been written for customers or is previous work in general.  I know within my own company we are very careful to study our agreement with customers with respect to IP ownership and reusability.  I can’t give sound legal advice so I would encourage you to discuss these issues with your employer before contributing.  With that said, bit heads work open source all the time so it’s not like this would be something impossible.  After all is said and done remember the spirit of this is that if we all contribute some we all benefit greatly.

    So without further delay here are my opening proposals.

    aaBackup

    The backup tools are decent but we can do much bettter.  I have developed a command line application that utilizes the GR Toolkit to do many different kinds of backups.  You can backup a single object, all the templates, a list of items from a text file, etc.  I have ideas on extending it for things like backing up all items that have a change log entry later than a particular date.. or maybe run it hourly and backup everything since the last run, etc.  What I do not have is a GUI.  I think we can debate the necessity or utility of the GUI.  Right now it is based on the 3.0 toolkit I believe.  I wouldn’t expect an upgrade to be an issue but you never know.

    Working Time Left to Complete : ~ 1-2 weeks

    aaDocument

    Working in the regulated industries we always have to document our objects, including templates.  This is not too bad with instances and CSV exports but you can’t do anything with templates.  We have started this project by taking objects (templates or instances) and sucking them into an object structure; attributes, properties, complex properties, etc.  Out of that we would write generators or output mechanisms (de-serializers if you will) to output the information to common formats like XML, JSON, Excel, Word, etc.  Or maybe you could output XML then use some formatting techniques to turn the data into a nice formatted document.  The biggest hurdle we have had has been around the graphics so maybe someone can help shed some light there.

    Working Time Left to Complete : > 8 weeks

    aa{Something about PlantPax but probably can’t really use that name for trademark issues}

    We had a request in the comments about putting together a package of objects that map to the Rockwell PlantPax objects.  I don’t see any reason in the world we couldn’t attack this technical challenge.  We are seeing a ton of PlantPax with our customers (side comment about what a great Sales job the Rockwell team is doing these days).  FTView has a serious leg up on WW from the perspective that they can tell customers they already have graphics ready to go.  There is nothing magical about their graphics package and I’m certain we could put together something with similar functionality for the WW platform.

    Working Time Left to Complete : ~8-10 weeks?

    aaCleanup

    If you’ve been around the Archestra world for a while you have undoubtedly used the Platform Killer.  This thing was from back in the 2.1 time frame I believe.  We’re still using it today on 2012R2 boxes so it hasn’t changed that much.  The one thing I don’t like is that you have to run it locally.  I need a way to perform this activity remotely.  Obviously we would either have to reverse engineer the existing code, which probably wouldn’t be too hard with some Winternals tools to sniff the registry and file activity.  Or even better would be to see if we could get a little help from the top to point us in the direction of things we need to do to cleanup a platform.

    Working Time Left to Complete : ~2-4 weeks?

    Template Creator (from Johan)

    A tool that allows one to auto create Template objects from definition files. I have started something for this using the GR Access toolkit but never completed it. The tool must allow one to Create UDA’s, Field Attributes, Scripts etc. from an import file.

    Working Time Left to Complete : ?

    Ok, I’ve put my neck out there, let’s here from everyone else!  Start slinging those ideas.  In the meantime I am going to try to figure out how to put up a poll so we can start voting.

    - Andy

    7 Responses to “aaOpenSource Continued”

    1. Perhaps this will help this group prioritize/shape your efforts. While I can’t disclose details I will say that the product team is working on the aspect of aaDocument related to ArchestrA graphics.

      • Chris Smith says:

        Will the tool or whatever it is your product team is working on print out alarm information and such? I’m asking because at this point I’ve been asked to report alarm information, for each object, multiple times. At this point, I’ve had to open each object individually and manually copy the info from each each into an Excel spreadsheet. What a tedious, time consuming pain in a neck this task is.

        The SCADA system we had prior to WonderWare allowed you to print out it’s database with various attributes, such as alarm information. I’ve been exposed to other SCADA/Control System environments which allow you to print out this information just fine from within their respective environments.

        This is a major hole in WonderWare in my opinion, or at least App Server (I’m not sure if InTouch will allow you to print out this information or not). Considering some industries have big time requirements when it comes to documentation, you would think App Server would provide some function which allows the user to print information relating to some or all of the objects.

        I’ve sent product suggestions in regards to this area multiple times over the past 8 years. If anyone has heard my pleas, I haven’t seen signs of it. Frankly I’m quite shocked, a feature which seems to be implemented so readily in other products, users aren’t all over WonderWare when it comes to this lack of a feature within their product(s).

        It would be great if this feature were implemented within the IDE. Imagine you have an area you want alarm information on, such as a chemical building of a Water Filtration plant which has various chemical feeders. You want all the alarm information so you right click the area object. From the pop up menu you select an option, such as ‘Documentation’. You would then get an option screen that comes up where you could select what you want, alarms in this case. Maybe an option to list just the objects you want information on (again alarms in this case) or perhaps list all the objects so a reader of the report would know what all is there and what does/does not have an alarm. Then have various output options such as CSV, Excel, Work, XML, print out, etc.. Hit the output option you want and away the system goes. A stand alone tool would work fine here as well.

        Don’t just think about alarm information here. Practically everything would be up for grabs: historization, attribute, UDA, scripts, Alarms, etc..

        This would be a great open source project. However, WonderWare needs to make this a part of their product someday.

        • Andy Robinson says:

          Chris,
          My intention for this tool would be very similar to what you are stating. Wasn’t quite going all the way to IDE integration (subhooking and all.. I’m not too good at it but others may be) but at least a standalone utility that replicated the galaxy view and did what you were looking for.

          With all that said take a look at the comment by John K on the previous post. He alludes to, without promising anything, a tool that does this. I am wondering if our efforts around this might be better served feeding Wonderware user requirements and functional specs and let them work on the nuts and bolts? They surely know the product better than we do.

          I have conversed with John and indicated the desire to have a scheme that not only produced finished documentation (like a word or html output) but also gave us some kind of intermediate like XML or an Excel spreadsheet. In the FDA regulated industries where we play the customer usually provides a standard document format that we must conform to. Having a set of organized, raw data that we apply a format to would be idea.

          Let’s see how the votes shake out and go from there.

          As far as I am concerned my ultimate goal is to get tools and utilities built for us to use. I don’t care who builds them. If by threatening to do this ourselves we get Wonderware to move faster or in a slightly different direction I’m find with that! Less code to maintain.. although the beauty of open source is that you don’t have to wait for the next product release cycle.

    2. Johan Forie says:

      Hi There

      On the tools side I would realy like to see a tool that allows one to auto create Template objects from definition files. I have started something for this using the GR Access toolkit but never completed it. The tool must allow one to Create UDA’s, Field Attributes, Scripts etc. from an import file.

      Regards
      Johan

    3. These are fantastic ideas. In particular, I would definitely be interested in helping with aaDocument and aaBackup.

    4. Shailesh Patel says:

      Great ideas. I am glad to see good use of GR Toolkit. I want to share that new version of GR Toolkit never breaks the utilities created with old GR Toolkit.

    5. Hi, I like these ideas, and I think I can contribute on aaDocument (access to ArchestrA Graphics Information is no more secret for me :D ).
      For the aaCleanUp tool, I think you should look in the HKLM\Software\[Wow6432Node](on 64 bit OS)\ArchestrA\Framework\Platform\Platform Nodes and remove all the entry that are in (Platform0, Platform1).
      There’s also a change to perform in Gobject table of Galaxy DataBase for the line of the Gr_Platform (columns deployed_package_id,last_deployed_package_id, deployment_pending_status must have ’0′ as value). Well, I don’t have official source for that so a confirmation will be great, but one day I was in a train, no Internet and a platform impossible to undeploy, and NO Platform remover (it’s a shame I know)…. I did some research in the registry find this key, remove the Platform0 and Platform1 and it solved my problem (I maybe had to reboot). I was able to deploy the platform before the train come to destination :D .

      On the table of projects, I’d love to put aaDynamic, because I’ve worked on a set of ArchestrA Graphics that provides dynamic features to an Intouch Application. All is coded in ArchestrA Graphics, so the source is really open. Actually the project is functional, but there’s a lot of improvments and features that can be added (works on different layout (grid, vertical, free) , copy/paste elements, flip/rotate elements,…). There can be one week of work for simple improvement to many weeks (display features don’t have hand), but I think is typically a project where community is benefic

      Regards,

      Mathias

    Leave a Reply