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 ... 339 340 [341] 342 343
5101
Support Questions / Re: Cannot Read with ReadInt or ReadAny
« on: June 18, 2013, 06:39:06 PM »
I will have to try to replicate this. Do you have other controls on the screen that are updating, or are you just reading the values using your code?

You can also try to read the values asynchronously by setting the property AsyncMode to true, using ReadAny, then create a DataReceived event handler.

Code: [Select]
    Private Sub EthernetIPforPLCSLCMicroComm1_DataReceived(sender As System.Object, e As MfgControl.AdvancedHMI.Drivers.Common.PlcComEventArgs) Handles EthernetIPforPLCSLCMicroComm1.DataReceived
        If e.PlcAddress = "L11:1" Then
            txtOffset1.Text = e.Values(0)
        End If
    End Sub

5102
Support Questions / Re: Cannot Read with ReadInt or ReadAny
« on: June 14, 2013, 07:08:46 AM »
Version 3.26 had a problem where the read would sometimes return a transaction number. This would typically occur if the form had many visual controls and a read was done in code. With that version the best you can do is this:
Code: [Select]
Dim mystr As String
EthernetIPforPLCSLCMicroComm1.AsyncMode=False
mystr = EthernetIPforPLCSLCMicroComm1.ReadAny("L12:1")

5103
Support Questions / Re: Cannot Read with ReadInt or ReadAny
« on: June 13, 2013, 10:33:48 AM »
If you are on the latest version, try using ReadSynchronous

5104
Open Discussion / Re: Where is the Numeric Input?
« on: June 12, 2013, 03:07:07 PM »
You should have the keypad. It has been in there for quite a while.

If you go to the download page of VS2012, when you click download you can select the option of iso. You can then burn it to a disc or use something like ISOMount software. I think WinRAR or 7Zip will extract the contents of an iso.

5105
If you are communicating with more than one PLC, you will need to add a driver instance to the form for each PLC and give each one the IP address of the corresponding PLC. Then in the visual control, set the CommComponent property to which driver instance to use.

5106
Open Discussion / Re: Where is the Numeric Input?
« on: June 10, 2013, 05:58:09 AM »
It is embedded into the controls that have the PLCAddressEntry property. If you put a PLC address in that property, when the control is clicked during run time the keypad will pop up.

Since VS 2010 and 2012 are still free, AdvancedHMI has been changed to use .NET 4. This gives the ability to use the built in Chart control. So that is why 2008 is no longer supported.

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

5108
Support Questions / Re: I cannot load the project on VS 2008 Pro
« on: June 06, 2013, 09:36:09 AM »
You would have to go back to an older version maybe as far back as 3.21

The software was upgraded to VS2010 or 2012 and .NET 4.0

It is recommended to download VS 2012 Express to use.

5109
I was able to reproduce the problem by putting a lot of controls on a form and using ReadAny in code. I have posted version 3.40 that fixes the problem. These is a new method named ReadSynchronous that should be used when doing a synchronous read in code.

5110
Try this:

- Add a button to the MainForm from the ToolBox
- Double click the button which will take you back to the code view
- Enter this one line of code in your click event handler:

Code: [Select]
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        System.Diagnostics.Process.Start("IExplore.exe")
    End Sub

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

5112
To All:

Version 3.27 is now available to see if it resolves these problems.

5113
Support Questions / Re: Issues with ControlLogix communications
« on: May 12, 2013, 08:22:39 PM »
Version 3.27 is now available and one of the problems addressed was reading large arrays. Try the new version and see if it fixes your problem, then let me know.

5114
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

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

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