Jump to content
OMRON Forums

Android based HMI


MatthewDean

Recommended Posts

Is anyone else out there using the Android operating system for their HMI?

 

Since the Power PMAC Component Library is for Windows machines, we assume that we have to write the communication interfaces ourselves. Right now we have attached a wireless router to the Power PMAC, and then we Telnet in from the Android device. We use the "gpascii -2" command to talk to the Power PMAC.

 

Our questions are:

 

1. Does this sound like the proper way to go about things?

 

2. What kind of performance penalty will we see using the "-2" option on the gpascii command to have the Power PMAC resolve the global names for us?

 

Thanks,

 

Matthew Dean

 

 

Link to comment
Share on other sites

  • Replies 3
  • Created
  • Last Reply

Top Posters In This Topic

I've tested gpascii over telnet from a core 2 duo machine running windows and c# for the application and from the aspect of network and PPMAC speed I would think it would be nearly equivalent to what you are doing with Android. I was seeing about 1ms response time reading a single P var without doing anything special with my network setups (just on a switch). I haven't personally tested "strings" in the sense of a symbolic name with gpascii. When I run natively on the PPMAC, however, it is capable of resolving the names in something like 10-30us (going from memory here....), so the overhead *shouldn't* be much as compared to the network turnaround time and gpascii overhead of 1ms per query. I'd query the thing in a loop 1000 or so times and check it with a timer in the Android device.

 

What device are you using with Android? Are you using the native API for android apps or QT/C++ or something else? Is there a way to compile and test on a windows machine, or do you just have a device handy when doing the development? I've tried our HMI with C# for both winforms and GTK# and the thing I like here is that the HMI has a simulate mode that lets you test your look and feel from a windows machine before downloading to the PPMAC or panel computer. I'd like to know if there is another way, especially if I can get into non managed code like C++. We are a small company so our engineers must handle HMI, sequence code, motion control, schematics, etc. It makes it tough to be a specialist on any one area. :o)

 

Also, if I may ask, how are you dealing with the short life cycles of the Android devices in terms of long term support? This was one thing I was leery of, but I'd like to know if there is a simple solution.

 

Thanks,

KEJR

 

 

 

Link to comment
Share on other sites

KEJR, thanks for the information!

 

It sounds like using Telnet and letting the PPMAC resolve the global names is the way to go. It will sure make the programming easier.

 

This is still sort of an R&D project for us. Our main HMI software is written in C# for Windows machines. So when moving over to the Android we used the SDK (Java) instead of the NDK (C++). I think that it will make the development faster since Java and C# are so similar.

 

We are still waiting to see how this will take shape. Obviously it gives us a low-cost platform with a nice touch interface, but the PPMAC users aren't the type that worry about low-cost. They are looking for high performance.

 

Another thought is that we could make a wireless Android tablet for technicians and engineers to use for plant wide machine diagnostics. Then we could run the actual machines with very simple (or no) user-interfaces for the operators.

 

As for the hardware, we are leaning towards Motorola. I can only assume that they will be around for a while after the merger with Google. We are waiting to see what the successor to the Xoom will look like. Right now I am using my Android phone and the emulator that came with Eclipse.

 

Matthew Dean

 

 

 

 

 

Link to comment
Share on other sites

  • 3 months later...

This is still sort of an R&D project for us. Our main HMI software is written in C# for Windows machines. So when moving over to the Android we used the SDK (Java) instead of the NDK (C++). I think that it will make the development faster since Java and C# are so similar.

 

I know this thread is getting old, but I had one follow up question. Does the development environment you are using support a WYSIWYG type editor, or is it all in code? I know the benefits and downfalls of the two strategies, its just our machine/automation programmers can't be too bogged down in coding the HMI for each of our many machines we build at my company. The hardware and software support is what keeps me thinking of IOS and android.

 

Thanks!

KEJR

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

×
×
  • Create New...