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.


Messages - Archie

Pages: 1 ... 340 341 [342] 343
5116
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

5117
I have a theory of what causes this problem:

AsyncMode is a property, therefore any thread can change it's value at any time. Subscriptions are continuously polled and set the property to True prior to calling ReadAny. If a user call to ReadAny is started with AsyncMode set to False, then a subscription update fires and changes the value of AsyncMode to True after the user call starts, but before it uses the value, it will treat the user call as an Async call and return the TransactionID.

If this proves to be the problem, then I will have to remove AsyncMode as a property and make it a parameter that is passed to ReadAny. That will make a unique copy of the value that other threads cannot change at a critical moment.

Your last solution kind of re-enforces my theory of what is happening.

5118
To add a screen, right click AdvancedHMI in the Solution Explorer and select Add New Windows Form.

Most of my graphics are drawn in Adobe Illustrator and exported as PNG files. The animation can get a bit involved because it generally requires a bit of code to do.

5119
Support Questions / Re: How to rotate a graphic
« on: April 10, 2013, 05:27:16 PM »
There is an animating fan component, but it is only used in training class, so it is not available to the public. Your best route may be to try to use a GraphicalIndicator with 2 images. Make one straight and the other rotated by 45 degrees. Then set PLCAddressValue to a bit in the PLC that repeats a toggle when the fan is running. That will give you somewhat of an animation.

5120
Support Questions / Re: Dec to BCD
« on: April 10, 2013, 05:11:56 PM »
There is a way to display a value that is stored in BCD format, but it is a little involved. This requires modifying the control to intercept the value from the PLC and convert it.

1) In the Solution Explorer, under the Controls folder, right click DigitalPanelMeter.vb and select View Code.
2) Go to about line 322 and look for this code:
    Private Sub PolledDataReturnedValue(ByVal Values() As String)
        Try
            MyBase.Value = Values(0)
        Catch
            DisplayError("INVALID VALUE RETURNED!" & Values(0))
        End Try
    End Sub

3) Modify the code like this:

    Private Sub PolledDataReturnedValue(ByVal Values() As String)
        Try
            '* Extract the individual bytes from the word
            Dim b() As Byte = System.BitConverter.GetBytes(CInt(Values(0)))
            '* Break out the nibbles and convert to BCD
            Dim BCD As Integer = (b(0) And 15) + ((b(0) >> 4) * 10)
            BCD += ((b(1) And 15) * 100) + ((b(1) >> 4) * 1000)

            MyBase.Value = BCD
        Catch
            DisplayError("INVALID VALUE RETURNED!" & Values(0))
        End Try
    End Sub

5122
Support Questions / Re: Getting program to work
« on: April 06, 2013, 04:44:24 PM »
Go to Tools->Options menu

In that window go to Windows Forms Designer->General and make sure AutoToolboxPopulate is set to true.

5123
This is a known issue that has been addressed in the next release. When the CIP connection closes, it does not close the corresponding TCP socket.

5124
Support Questions / Re: Connections to a SLC 5/01 DH485
« on: March 21, 2013, 10:44:59 AM »
I have connected to the older DH485 processors using a 1770-KF3 module. It is essentially a DF1 to DH485 converter. A PIC module will not work because it relies on software token passing which is very difficult and nearly impossible in .NET

I have never used the UIC module, but it may work if it maps to a COM port.

5125
I have not yet been able to reproduce this yet, but the next version (3.27) has some portions of the Ethernet driver reworked, so maybe it will be fixed.. I'm not sure when the version will be ready for release.

5126
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.

5127
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.

5128
Feature Request / Re: Component event hooks
« on: March 14, 2013, 02:45:26 PM »
A trick that is used often is to add a BasicLabel and an event handler for TextChanged. In the event handler, you can read a large chunk of data. That keeps communications way down by only monitoring the one value.

5129
Support Questions / Re: Modbus TCP driver
« on: March 14, 2013, 02:32:28 PM »
I don't think it can do floating point. Only bits, integers, and double integers.

That driver was developed using a Modbus simulator and the simulator did not support floating point. What hardware are you using?

5130
Support Questions / Re: Advanced HMI as soft-PLC?
« on: March 13, 2013, 01:13:47 PM »
The Ethernet/IP driver does not support IO messaging necessary to be a scanner.

The difficulty with making it a PLC controller is that .NET nor windows is real time therefore the response could get as bad as several seconds, depending on what Windows decides is priority. Some companies have developed a real time kernel for windows, but that is a whole other animal.

In the future there may be a possibility of a driver that makes AdvancedHMI an Ethernet/IP adapter to a scanner like the 1756-ENBT

Pages: 1 ... 340 341 [342] 343