GenICam – What is New? Vision Stuttgart Nov 2012 Dr. Fritz Dierks Director of Platform Development at Chair of the GenICam Standard Committee 1 Outline GenICam as Core of Modern Interface Standards Latest Example: USB3 Vision GenICam Status and Roadmap 2 GenICam in a Nutshell provides plug&play to machine vision cameras Accessing Camera Features and Grabbing Images Driver Vision Library interface independent Camera Vendors PC Software Vendors Customers 3 115 as of Nov 2012 GenICam Members 4 The GenICam Core Team History of international GenICam meetings For full list see www.genicam.org 5 GenICam is the Core of all Modern Interfaces 2.0 () Latest newcomer: USB3 Vision Pure transport layer standard Fully relies on GenICam as mandatory front end Cameras are SFNC compliant 6 P12-09 Agreement transport layer interface In 2009 the Standard Committees Agreed on… All new Camera interfaces should be based on GenICam and define a transport layer (TL) only The TL describes only how to access camera registers and how to stream data. GenICam defines how to build a camera on to of the transport layer CameraLink CL Customer and Vendor Benefits Re-use of existing IP / platforms Easy migration between transport layers Systems with mixed transport layers possible 7 The Role of GenICam Modules Client SFNC – camera features Vision Library / SDK GenICam reference implementation – interpret XML file content CLProtocol – Camera Link support GenTL GenTL – transport layer API Driver GenCP – packet layout TL Standard Camera XML GenApi – XML file format 8 New GenICam Module: GenCP All GenICam aware, packet based transport layer standards need to define a protocol / packet layout for Accessing Registers Raising Events Heartbeat Bootstrap registers Fetching GenICam XML file (manifest table) In order to avoid re-inventing the wheel the new GenICam module GenCP provides a generic protocol definition which can be tailored to the actual transport layer’s needs Many ideas are borrowed from GigE Vision GenCP is the base for USB3 Vision and will be used for future packet based TL standards 9 Outline GenICam as Core of Modern Interface Standards Latest Example: USB3 Vision GenICam Status and Roadmap 10 USB 3.0 Fact Sheet Standardized screw locked connectors Performance Data 300…350 MByte/s of sustained bandwidth 5/14/50 m cables passive/active/optical 5V / 4.5W power supply Intel / AMD chipset support Win8 native support, Win7 SP expected Passive Cables 3…5 m Active Cables 6…14 m Active cables use equalizers to compensate for cable losses Optical Cables up to 50 m (under preparation) 11 This is not USB 3.0… USB3 Vision Standard (U3V) The market accepts a new interface only if there is a standard CL, 1394, GigE have a standard widely adopted in MV USB 2.0 does not have a (MV) standard niche only Basler took initiative and organized a standard committee U3V is international G3 standard hosted by the AiA, and backed by the EMVA and JIIA From kick-off to launch in only 14 month - thanks to to GenICam May 2011 Jul 2011 Basler Initiative White Paper Sep 2011 Feb 2012 Kick-Off Ahrensburg Basler, AVT Meeting Vancouver PtGrey May 2012 Sep 2012 Nov 2012 Dec 1st Draft Meeting Launch RC1 2012e Vision Boston 3 working meetings only Dresden Baumer Vision Stuttgart Balloting Completed 12 31 x U3V Committee Members*) *) as of 30.10.2012 14 x Cameras All of these companies are GenICam members 7 x Libraries 5 x Cables 5 x Misc. 13 Key Features of U3V Plug&Play Windows P&P manager binds camera automatically GenICam provides standard features and behaviour Zero Copy Video data is copied to RAM by bus master DMA. The PC’s CPU is not involved. Typical CPU load < 1% Variable Image Size The camera can decide on-the-fly to send a smaller frame without the host knowing this in advance Applications Line scan, e.g log inspection in a sawmill Pick & Place Live & Trigger Low Latency and Jitter Details next slide 14 14 Register Access Performance Measurement Setup 1 measurement cycle = 10000 requests, 10 times Read and write requests performed separately Mean, min, max and standard deviation values are computed from one measurement cycle 4 measurement cycles are performed with different (0-3) bulk streaming devices are running at @112,5 MB/s Test application priority is set to REALTIME (24) Results Write = 50 ± 6 µs Read = 170 ± 17 µs 15 U3V is an On-The-Wire Standard Benefits of on-the-wire Client proprietary Vision Library / SDK Host proprietary Library Vendor GenICam standard way Supports embedded systems Clear responsibility for software on host side All modern interface standards are defined on-the-wire Driver Device USB3 Vision Standard Device Camera Vendor 16 Problems with Non-Standard USB 3.0 Cameras The typical USB 2.0 camera requires a proprietary driver from the camera vendor Client proprietary 2.0 Drawbacks Vision Library / SDK Library Vendor Customer has to use camera vendors’ proprietary API he is locked in on the API Drivers are typically available only for Windows no embedded system support Considerable CPU load, esp. if driver handle color conversion Host proprietary Driver Device proprietary Camera Vendor Many USB 3.0 cameras from exUSB 2.0 companies stick to this scheme. Device 17 Outline GenICam as Core of Modern Interface Standards Latest Example: USB3 Vision GenICam Status and Roadmap 18 Current Release GenICam v2.3.1 • Lots of bug fixes and small improvements (more than 100 tickets) VisualStudio 10.0 support Improved CameraLink support Better loading performance 12 times faster 1.5 times faster 1.5 s Large XML file : 3685 nodes, 7200 links Test Laptop : Intel Core i5 2.6 GHz 19 Problems with GenICam 2.x First time node map creation DOM tree is created from XML XML Cache Four rounds of style sheets are applied Dependencies are determined and Xerces load XML stored to DOM tree store/load create DOM DOM is stored to cache Node Map Node map is created Node map creation from cache DOM tree is built from cache XML Node map is created - Xalan apply style sheets - Dependency check Large memory foot print Slow 20 20 Ideas for GenICam 3.0 First time node map creation Slim binary graph representation of the node map is created from XML using a specialized C++ parser bin Cache C++ Parser + preproc XML While parsing all pre-processing steps are performed Dependencies are determined and stored store/load create graph to graph Graph is stored to binary cache Node Map Node map is created Node map creation from cache Graph is built from cache bin XML Node map is created Dependency check No DOM, no xerces, no Xalan Fast due to binary data structures (no strings) 21 GenICam Roadmap GenICam v2.4 General Improvements Bug Fixes SFNC update GenCP added Start Working on GenICam 3.0 Reduce memory footprint Speed up loading even further Get rid of xerces/xalan Better support for embedded system Better support for private installations Fully XML backward compatibility Currently the requirements are discussed and a scouting project is under way 22 Questions? Dr. Fritz Dierks Director of Platform Development Chair of the GenICam Standard Committee Basler AG An der Strusbek 60-62 22926 Ahrensburg Germany Phone: +49-4102-463-381 Email: [email protected] www.baslerweb.com 23
© Copyright 2024