Sei sulla pagina 1di 39

1

Developing a Powerful HMI


Application Using NI Hardware and
Windows Embedded Software
2
Windows Embedded Software
Andrew Mierau
Project Engineer
Definition of: HMI
(Human Machine Interface) The user interface in a
manufacturing or process control system. It
provides a graphics-based visualization of an industrial
control and monitoring system. An HMI typically resides
in an office-based Windows computer that
communicates with a specialized computer in the plant
3
in an office-based Windows computer that
communicates with a specialized computer in the plant
such as a programmable automation controller (PAC),
programmable logic controller (PLC) or distributed
control system (DCS).
PC Magazine
http://www.pcmag.com/encyclopedia_term/0,2542,t%3DHMI&i%3D44300,00.asp
HMI Essentials
Use Case
Deployment and not Development
Hardware
TPC-22xx, cRIO-908x, etc
Industrial PCs
4
Industrial PCs
Servers
User Interface
LabVIEW
Operating System
Windows
Linux
Why Would I Choose Windows?
Graphical User Interface
Extensive driver and application support
Complete tool chain
Well documented APIs
Wide availability
5
Wide availability
Extensive hardware support
Fast time to market
Standard conformity
Extensibility (no-closed box)
Built-in manageability
Localized language support
Why Wouldnt I Choose Windows?
Large footprint
Only x86 Support
High minimum hardware requirements
6
High minimum hardware requirements
Perceived quality issues
Not reliable
Not resilient
Not stable
7
What can developers do to create a reliable,
custom HMI solution based on Windows?
8
Step #1
Pick the correct version of Windows for your use-
case
9
Windows Embedded Overview
10
National Instruments Windows Offerings
Windows Embedded Enterprise
x86-based development systems
PXI(e) Controllers
Rack Mount Servers
Windows XP and Windows 7
11
Windows XP and Windows 7
Windows Embedded Standard
x86-based deployment systems
cRIO-908x
TPC-22xx
Windows Embedded Standard 7 (WES7)
Windows Embedded Standard 7 (WES7)
Modularized version of Windows 7 Ultimate
Binary Compatibility with Windows 7 Ultimate
Rich operating system functionality
12
Rich operating system functionality
Reduced operating system size
Embedded Enabling Features
Modularized
WES7
1 Embedded Core Package
150 System Packages
500 Driver Packages
13
500 Driver Packages
37 Language Packages
Windows XP Embedded/WES2009
10,000 Components
1,000 OS Components
9,000 Driver Components
Compatibility
Windows API Support
Any application that runs on Windows 7 Client can also
run on WES7*
Windows Driver Support
14
Windows Driver Support
Existing Windows 7 Client drivers will work on WES7*
*Provided the correct packages are included in the image
Footprint
Minimum Configuration
550MB
No GUI/Explorer Shell
15
No GUI/Explorer Shell
Typical Configuration
~1.4GB
Nearly Identical to Windows 7 experience
Default Windows 7 OEM install is 16GB!!
Recommendation #1
For Windows-based HMI systems, National
Instruments recommends using Windows
Embedded Standard 7
16
Embedded Standard 7
Step #2
Utilize features available in the OS
17
Embedded Enabling Features (EEF)
Specifically targeted to embedded customers
Unique to Windows Embedded Standard
Enhance reliability and robustness of the OS
18
Enhance reliability and robustness of the OS
Target specific use-cases
Enhanced Write Filter (EWF)
Benefits
Protects a volume from write access
All volume writes are redirected to a RAM overlay
19
All volume writes are redirected to a RAM overlay
Volume writes are not persistent across reboots
Extends life of flash media
Protects against malicious or unintended changes to
the system
EWF in Detail
Upper filter driver in
the volume stack that
is located between the
file system and the
class drivers that
20
class drivers that
interface with the
physical disk
EWF Commands
Enable*
Disable*
Commit*
21
Commit*
Commit and Disable*
Commit and Disable Live
*Requires reboot
Enhanced Write Filter (EWF)
Limitations
Not ideal for data logging
Persistent data should be logged to unprotected partitions,
removable devices or network locations
Memory Usage
22
Memory Usage
Memory usage should be monitored
Virtual Memory (Page File) is not recommended
Normally requires reboots
Normally set up during development/maintenance
Requires Administrative privileges
Hibernate Once, Resume Many (HORM)
Benefits
Always boot to the same hibernation image
Requires EWF on all mounted, fixed disks
23
Requires EWF on all mounted, fixed disks
Ideal for Kiosk-type applications
Once active, hibernate normally to create a resume
point
Hibernate Once, Resume Many (HORM)
Limitations
Requires EWF on all mounted, fixed disks
Not ideal for data logging
24
Not ideal for data logging
Persistent data should be logged to removable devices or
network locations
HORM state lost when committing EWF
Inherits all limitations of EWF
File Based Write Filter (FBWF)
Benefits
Protects the disk against write access at a
file/directory level as opposed to the volume level in
EWF
25
Selective write through
Exclusion List for files/directories
Selective commit/restore
Limitations
Does not support HORM
FBWF Commands
Enable*
Disable*
Add/Remove Volume*
26
Add/Remove Volume*
Add/Remove Exclusion*
Commit/Restore
*Requires reboot
Controlling EEF
LabVIEWUtility
LabVIEWAPI
Command Line
27
Command Line
EWF and HORM Demo
28
Recommendation #2
Utilize Embedded Enabling Features to increase
reliability and stability when they fit your end
use-case
29
use-case
Step #3
Customize the OS to meet project requirements
30
Automatic Restart on System Failure
Control Panel -> System ->
Advanced -> Startup and
Recovery
31
User Interface
Background
Change Logon Background
C:\Windows\System32\oobe\info\backgrounds
32
C:\Windows\System32\oobe\info\backgrounds
backgroundDefault.jpg
Must be less than 256KB in size
User Interface
Auto Logon
HKLM\Microsoft\Windows
NT\CurrentVersion\Winlogon\
33
NT\CurrentVersion\Winlogon\
AutoAdminLogon
DefaultUsername
DefaultPassword
User Interface
Cursor
Make cursor transparent
Taskbar
34
Taskbar
Auto-hide or lock
Startup
Put a shortcut to your application in Startup
Shell Replacement
Replace the Explorer, Windows shell
Per System
HKLM\Microsoft\Windows
NT\CurrentVersion\Winlogon\Shell
35
NT\CurrentVersion\Winlogon\Shell
Per User
HKCU\Software\Microsoft\Windows
NT\CurrentVersion\Winlogon\Shell
Always have a way to execute Explorer.exe
Customization Demo
36
Recommendation #3
Customize your solution for your users specific
needs.
37
Conclusions
WES7 is ideal for HMI applications
Utilize EEF to make your system more reliable
and robust
38
and robust
Customize your solution for your users specific
needs
39

Potrebbero piacerti anche