RobotStudio event

SDK controls are unvisible in IE 6.0 [WebWare SDK]

imageHello everybody!

I have to write an Internet application with SDK Active X controls in Internet Explorer to be able to set variables and signals via Internet. I use Visual Studio .Net and everything works at my machine with Interlink installed. But other people who goes to my site see only empty boxes instead of f.ex. ABBButtons.

There is a CODEBASE tag in html that shows the path to .ocx files and I have tried to install Interlink at client machines and set the path to rimbase.ocx but i got the same result. I tried to write Interop dll name in CODEBASE too.

What is wrong? Does anybody write Internet applications in .Net + WebWare SDK?

 

Best regards,
Sergej Saibel

Comments

  • Typically, we would not encourage a client-based application in which any user could access robot memory, i.e by writing variables and setting signals.

    Such unfettered access would be considered intrinsically unsafe. These operations are not supported in the WebWare Server product for this reason.

    I don't know of anyone who has tried using the SDK controls like buttons in a Web application. The scriptable helper is the only one that is specifically intended for that purpose.

    Russell Drown
  • Yes, I know that it can be security problems with Internet applications but we will run the application ONLY on local Intranet. And how can I write an application that can be run at several computers connecting to the same robot without Internet? I think that I misunderstand ABB's concept. Does it exist another way? A robot has a fast IP address in it's Factory Ware configuration and can be connected to only one data collector. Can I connect several computers to the data collector so they can see the same robot?

    An usual Helper exists as an icon. How can I add a scriptable helper to my program? There is not so much documentation about it.

     

    Best regards,
    Sergej Saibel
  • Can you provide us with a description of the goal you are trying to accomplish?

    you wrote:

    Yes, I know that it can be security problems with Internet applications but we will run the application ONLY on local Intranet.And how can I write an application that can be run at several computers connecting to the same robot without Internet?

    Once again, this is inherently unsafe if you intend to allow more than person to write values to the same controller. For instance, how do you propose to avoid "concurrency" issues, i.e. what is to prevent multiple users from trying to perform conflicting tasks at the same time?

    Even with such issues addressed, the RAP communications protocol is not designed to support concurrent users. The RAP task on the controller will become unstable and eventually die when more than one user establishes a connection. The IRC5 controller is supposed to support up to 4 simulataneous users when it is released.

    If you are just reading and displaying data to multiple users, that is a different story. That is precisely what a WebWare Server network allows. Additionally, other functions include backup/restore, file system access, etc.

    If you didn't want to use WebWare Server, you would have to use Interlink or create your own RAP client to interact with robots, then figure out some way to get multiple instances of that tool to connect to some central data repository, i.e a server. From that point, you could access data from your clients.

    I think that I misunderstand ABB's concept. Does it exist another way? A robot has a fast IP address in it's Factory Ware configuration and can be connected to only one data collector. Can I connect several computers to the data collector so they can see the same robot?

    See above. Our vision of robot networking follows this hierarchy:

    Many robots>Several data collectors>1 Webware Server

    An usual Helper exists as an icon. How can I add a scriptable helper to my program? There is not so much documentation about it.

    You must use a helper control, then create the script interface programmatically.Once you have that done, then you call methods of the Scriptable Helper Interface.

    An example of this in VB would be:

    Dim IScript As HelperScript
    Dim str1 As String
    Dim str2 As String
    Dim pID As Integer
        
    Set IScript = Helper1.Script
    str1 = "str1"
    str2 = ""
    pID = 0
    str2 = IScript.S4ProgramStringVarRead(str1, pID)
    Label1.Caption = str2

    Russell Drown
  • [QUOTE=RussD]

    Can you provide us with a description of the goal you are trying to accomplish?

    Yes, I have WebWare server installed on server machine and my clients can access it from those client computers and see everything they want. Now they would like to have a link from WebWare's page to my web application that will set and reset a signal. I have told them about the risk for concurrency actions but the only alternative way to do it is to write a usual Windows form. The worst problem in this case is that we have to install the form on the server machine and go to it if we want to use the form. They don't like it. Ok, we can use a terminal application to run the form on the server. Not so convenient too.

    If you are just reading and displaying data to multiple users, that is a different story. That is precisely what a WebWare Server network allows. Additionally, other functions include backup/restore, file system access, etc.

    Can I connect to a data collector from several client machines without WebWare server? Ok, I'm happy with readonly access this time.:)

    If you didn't want to use WebWare Server, you would have to use Interlink or create your own RAP client to interact with robots, then figure out some way to get multiple instances of that tool to connect to some central data repository, i.e a server. From that point, you could access data from your clients.

    So as I understand there are only two ways to go:

    1. Buy WebWare server and be happy in it's readonly mode;

    2. Write an own server application that will connect to several robots via Interlink and write an own client application wich will use my own protocol to talk with the server application and do that I want. On my own risk.

    Have I right?

    An example of this in VB would be:

    Thank you a lot for the example!

    Best regards,
    Sergej Saibel
  • One solution could be to create a (Windows form) WebWare SDK application for changing the signals/values and place that application on each Data Collector.

    Then, if the data collectors are XP Professional, you could set up Remote Desktop to allow a user to connect directly to the machine and access the application as they wish.

    I believe that Remote Desktop only permits one connection at a time to the host PC, and the Remote Desktop client is scriptable and can be embedded in a web page. We have done this for our test environment and it works very well.

    We have a web page that lets our users reserve a piece of test equipment;you could extend this model to cause access to a reserved machine to be disabled while the reservation is valid.

    Russell Drown
  • Thank you for your help Russel, I will go and read more documentations about all of this stuff.image

     

    Best regards,
    Sergej Saibel