HMI
HUMAN MACHINE INTERFACE
SIMOVERT MV
SEGMENT: MEDIUM VOLTAGE DRIVES
GUIDED COMMISSIONING
CUSTOMERS: SIEMENS
DATE: 2000-2001
PRODUCT: MEDIUM VOLTAGE AC DRIVE
Position: SYSTEMS ENGINEER
My position was to design a "Guided Commissioning Module" for installing drives for use by commissioning engineers worldwide.
As a challenge to my Engineering background , I was sent to Erlangen, Germany to consult with the Siemens sytems group and program a module for installing drives that worked within their existing "Drives ES" software.
This was to be done in Visual Studio 6 with a submodule written in Visual C++.
The intent was to simplify the installation and configuration of the "Simovert MV AC drive".
I spend 30 days in Germany with no knowledge of the language trying to understand the "IMASK interface" for designing the program as an active-x control which would function inside the existing software. Until I would return to the U.S. and finish the actual programming.
This is the Existing "Drives ES" software. (upload image later) It had many modules used for installing and configuring different drives in a logical manner. I was to design a sub module to help in guiding the commissioning of the "Simovert MV" medium voltage AC drive.
VIEW DRIVES ES
This is a single line diagram describing the interface. My module was to be created as an active-x control so that it would sit inside the "Drives ES" container. Selection on a menu, allowed a engineer to open that specific module for use, to help guide his actions and simplify a "tedious process".
The module talked to the IMASK interface and appeared in a window in Drives ES. It connected to a database in Microsoft Access to select drives values and automatically select the correct values to be inputted.
A "Drives Expert"(Hr.Heinz Hollet) was sent from Germany to write the specification of how the program was to function and the appearance, since as a programmer I had very little technical knowledge of the drive itself. My job was to take the design and make it function. each screen represents a different windows screen and input/output of data to be displayed so the program was very specific containing over 45 screens that appeared based on option selected and data input.
Because the Program was proprietary I will only show a few samples of screens and data to protect the interests of my former employer and to avoid copyright issues.
Here is an example of the start screen specified for the program. Mr. Hollet developed the specification in PowerPoint so that I could emulate the current style and function of the "Drives ES container".
This is the resulting screen developed in Visual Basic 6.
My program was to fit within the existing container of Drives ES. Here is the appearance of Drives ES without my Module inserted. The blank area on the right was to display the changing screens and allow data input and display for the commissioning engineer. Input and output was sent to a windows "INI" type file for storage of data for use and later import into the actual functional system.
I did not use a VB property bag for fear of failure of data if power failed during data asignment and the user would be unaware of incorrect data. Also a "INI file" could be copied from one system to another, such that I could cut down on configuration time on other similar drives by using a template "INI file" and simply adjusting values for different drives.
I created a database in MS-Access to house the "AC Drive MLFB data" for each drive configuration. This new screen shows the variables associated with each drive which could be selected. Before this, Engineers had to consult a book with tables which was very time consuming and also input data values by hand, rather than automatic "population" by simply selecting the drive of choice.
Drive selection and starting values could then be inputted and confirmed with accuracy with no fear of key stroke errors. As well as the engineer did not have to memorize or be familar with the entire table to be able to perform configuration. The values were stored locally on a hard drive so that incomplete or completed data values for the entire final configuration could be retrieved with a single keystroke,so the Engineer never had to start over or work from scratch after configurating the drive the 1st time.
There were over 45 varoius screens for input of data. Screens would appear in a logical step by step process to guide the engineer through the configurations, a few screens would appear based on the selctions made in the prior screen so this was not a linear process, but helped engineering to commission drives in a step by step process guided by the software and less wrote memorization which could get complicated based on the number of options and dependent variables selected and values inputed.
Here is an example of the PowerPoint specification of what I was to create for testing and assignment of "virtual loads". The next slide shows the "Visual Basic" object.
One of the features of the program allowed the engineer to perform and assign virtual drive loads and testing. The display far left is the "Drives ES" container. The graphic display -left top- allowed the user to used to determine which step he was "in" during configuration.
The bottom left window gave a graphic display of the "type function" was current during the configuration. While the right window allowed for data input and output for use to configure the drive (User Interface). Here one could select and define loads to be placed on the drive to test its operation, before connecting to a real load and encountering errors or damage to the load or the drive.
This screen allowed testing of the operational components of the drive. In this case, one could test the fans operation and cooling ability before engaging the device in actual use. Agian to assure functionality before causing any damage using a "faulty or nonfunctioning" internal or peripheral device.
I wrote the software to include "warnings and popup displays" to alert the user of incorrect inputs or give a response to drive failures. Thus a chance to correct inproper input before the drive received the configuration data before it was loaded into the drive. Also warnings and a stop fuction which would halt the drive in case of physical failures or fault status.
When the configuration was complete the user could see a report of the "key and significant parameters" to assure final configuration matched his specifications and data input before running the drive. The user could conduct a review of parameters to see if something had changed should the drive exhibit unusual or poor performance.
I also wrote the program to be multi lingual since commisioning engineers were to use this world wide. languages included were US, Deutch, Espanol, and Portugese. I tried to write all description in colloquial english not technical and we outsourced the text to have it translated into the other languages.
Multilingual was done using a Visual Basic Resource file. So that for every input output lable/ table, text box or pop up explanation, there were alternative languages that would take the place of US english "everywhere" with in the program requiring minimal programming and less errors as this feature is native to Visual basic and MSWindows. New languages could easily be implemented.
I HAVE TRAINING IN HMI SOFTWARE:"WINCC AND WONDERWARE". IT JUST HAPPENS THIS PARTICULAR HMI NEEDED TO BE WRITTEN IN "VISUAL BASIC" TO MATCH THE OBJECT INTERFACE OF ANOTHER SOFTWARE.
I PERFORMED "FULL CYCLE DEVELOPMENT" (cradle to grave)TO INCLUDE, CODING, DEBUGGING, TESTING AND INPLEMENTATION.
I HAVE AUTHORED THE SPECIFICATION A A SINGLE PROJECT FOR INDUSTRIAL CONTROLS ONLY TO BE GIVEN THE TASK TO DISTRACT ME FROM DOING THE ACTUAL CODING SO THAT FRIENDS COULD ASSUME MY RESPOSIBILTIES, LEARN AND TRAVEL.
THIS APPLICATION WAS WRITTEN AS "OBJECT ORIENTED" CODING. OOP, OOD. SO THAT ITS EASILY EXPANDIBLE AND MULTI-LINGUAL.
AS FAR AS PROGRAMMING I PROGRAM AUTOCAD CUSTOMIZATION AND AUTOLISP AS WELL AS IN SCHOOL I STUDIED: FORTRAN, PL-1, MBASIC, PDP-11, 8600 MICROPROCESSOR PROGRAMMING AND BOOLEAN LOGIC PROGRAMMING FOR INTERGRATED CIRCUITS. ITS JUST I FOUND THAT MOST LANGUAGES WERE OUTDATED BY THE TIME I GRADUATED. WHILE INTERGRATED CIRCUIT DEVELOPMENT WAS LIMITED TO THE WEST COAST AND SILICON VALLEY.
GIVEN TIME I CAN ADAPT TO MOST LANGUAGES ALTHOUGH I MAY NEED EXAMPLES AND SOME ASSITANCE TO GET STARTED.
Bootstrap Slider