Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Archie

Pages: 1 ... 6 7 [8]
106
Application Showcase / Panelview 600 Replacement
« on: August 18, 2013, 09:30:10 AM »
This was a project to replace an obsolete Panelview 600. The PanelView used a DeviceNET interface, which was replaced with a panel PC running AdvancedHMI, and Ethernet interface. The original developer used the practice of mapping from the Local IO variables to a tag. This made the conversion much easier by referencing the mapped tags in AdvancedHMI, then removing the rungs in the ladder that mapped from the inputs to the mapped tags. Using AdvancedHMI version 3.5, not a single line of code was necessary. The new FormChangeButton allowed screen navigation without the 2 lines of code that was necessary in previous versions.

The last picture is a screen from the original PanelView. You can see how closely AdvancedHMI can replicate the look and feel.

107
Tips & Tricks / Avoid Hungarian Notation
« on: August 18, 2013, 09:21:19 AM »
Many developers continue to use a practice known as Hungarian notation for naming variables. Hungarian notation uses a lower case prefix to indicate the type of the variable, for instance "blnLight" indicates the variable is a Boolean type.

When developing in .NET, Hungarian notation is no longer consider a pattern or best practice. Here is a link to Microsoft's page listing preferred naming conventions:

http://msdn.microsoft.com/en-us/library/ms229045.aspx

108
Open Discussion / Version 3.5 Coming Soon
« on: August 09, 2013, 10:54:24 AM »
The next release of AdvancedHMI is due to be available in August. This version brings many changes and improvements based on everyone's feedback. Some features which were intended to be implemented in version 4 were brought into version 3.5

With so many changes, the upgrade process from previous versions becomes a little more difficult. If you have an application with little to no VB code, then upgrading should be fairly easy. However if you use VB code a lot, then the upgrade can get very involved. Here are a few examples of changes that will require attention:

Synchronous reading using ReadAny with AsyncMode or ReadSynchronous is replaced with a Read method and AsyncMode no longer exists. Asynchronous reading is now done with the BeginRead method. This was chosen to follow the .NET patterns closer.

Subscription callback signatures have changed. The new version now includes more information than just the value returned, such as the PLC address. This allows multiple subscriptions to use the same call back. A new component called DataSubscriber will make subscriptions a breeze. Simply add the component to the form, double click and you will be taken to a callback routine where you can write the code to process the value.

A lot of attention has been given to the ControlLogix driver to make it more stable and faster. It is now using a background thread to process subscription updates and throttles the messages sent to the PLC. This should eliminate the ignored requests which causes the "No Response -20" error.

This release is an exicting new release that will take AdvancedHMI to the next level and I am looking forward to the continued growth of the software.

109
Tips & Tricks / Hear Your Alarms, not just an annoying buzzer
« on: June 27, 2013, 07:07:52 PM »
The MessageDisplayByValue has a property named SpeakMessage. If this is set to true, then each time there is a new message, it will be spoken through the PC speakers. If you wish to get creative, you can find various voices for download on the internet.

110
Application Showcase / Simple Plant Monitor
« on: June 27, 2013, 03:25:43 PM »
This is a simple one screen HMI to monitor some process variables in a plant. I created custom controls to give AdvancedHMI the same look and feel as an existing HMI. It was designed to run on an 8" panel PC (800x600 resolution)

111
Tips & Tricks / Multiple Update Rates on Same Form
« on: June 09, 2013, 09:02:38 PM »
If you need the update rate of your controls to be faster, you can change the PollRateOverride property of the driver. By default it is 500ms, so you can change it to something like 100ms. However if you have a large number of controls on the form, you can quickly bottleneck the communications.

If you only need a few select controls to update faster, you can achieve this by doing the following:

1) Select the driver in the component tray
2) Right click and select copy (or Ctrl-C)
3) Paste a new copy in the component tray (Ctrl-V)
4) Select the new instance of the driver and change to the PollRateOverride to the faster rate (100)
5) Now select the control on your form that you would like to update faster
6) Change the ComComponent property of the control to the new instance of the driver

The result will be that only the selected control will update faster than the rest and avoid a communication bottleneck.

112
Tips & Tricks / AdvancedHMI on a Tablet
« on: May 23, 2013, 07:49:25 PM »
If you always wanted to roam around with your HMI in hand, it is now possible. AdvancedHMI has been successfully tested on the Microsoft Surface Pro. For anyone not familiar with the Surface, it is Microsoft's entry into the tablet market. There are 2 version, one runs WinRT and the other runs Windows 8 Pro. The pro version is essentially a full laptop in tablet form that runs Windows 8. The WinRT version is a scaled down version that is a bit more limited. AdvancedHMI will only run on the Surface Pro. I was even able to load and run Visual Studio on the Surface Pro.

You only need a wireless Ethernet connection to the same network on which your PLC resides and your AdvancedHMI application runs seamlessly on the tablet just as if it were on a full PC.

113
Open Discussion / Release 3.27
« on: May 12, 2013, 08:20:28 PM »
The latest version 3.27 is not available for download. These are some of the key improvements:

AdvancedHMI Version 3.27 Release Notes

Based on .NET 4.0 framework
With .NET 4.0, A Chart is available under the data group of ToolBox
PilotLight can use different colors for on state and off state
Added KeypadMinValue and KeypadMaxValue to BasicLabel to limit value entry
Fixed problem with Modbus driver that would cause it to work for about 1 minute, then give index error
Added CloseConnection to EthernetIPforPLCSLCMicro and EthernetIPforCLX
Reworked some socket data handling inside the Ethernet/IP driver
Changed EthernetIP drivers to eliminate First Chance Exceptions that would cause slower reads
Fixed problem in EthernetIPforCLX driver with reading string arrays

Added SpeakMessage property to MessageDisplayByValue
Added ValueToWrite as OutputType option on BasicButton
TwinCAT driver is part of the package again

114
Tips & Tricks / Installation without Frustration
« on: March 18, 2013, 09:55:04 PM »
There are many methods of deploying your completed project. The one I recommend and use myself is to copy the complete solution to the PC and create a shortcut to the EXE found in the \bin  folder (debug or release depending on how you have Visual Studio setup). I will then move the shortcut to the Startup menu. This is commonly referred to as XCOPY deployment.

This solves the biggest problem to the next person that must maintain or modify the HMI by keeping the full source code with the executable easy at hand. Nothing more frustrating than wanting to make a simple modification and not being able to find the source code.

115
Application Showcase / Screen Shot of Program using only BasicLabels
« on: March 14, 2013, 03:02:17 PM »
I did this more or less for a demo to show what can be done with just a BasicLabel and background image.

Pages: 1 ... 6 7 [8]