Upload
dinhdien
View
219
Download
2
Embed Size (px)
Citation preview
Bonn, 03. September 2006
Session: Information Technology for Agricultural Machines
» Software in Tractors: Aspects of Development, Maintenance and Support «
Dipl.-Ing. Rainer Hofmann, AGCO GmbH, Germany
Bonn, 03. September 2006
Development of Software is like building a Cathedral Development of Software is like building a Cathedral ……
Bonn, 03. September 2006
(1) General aspects of software engineering (in agricultural machines)
(2) Software applications in tractors – an overview
(3) Economical requirements for software
(4) Software development process
(5) Maintenance of software
(6) Software as a product
(7) Integration across manufactures – ISOBUS and other standards
(8) Conclusions
Structure
Bonn, 03. September 2006
• Software controls all vital functions of agricultural machines
• Technical innovation is driven by software
• Software is key and core competence in agricultural machinery companies
• Manufacturers intellectual property in software engineering is a key factor
• Quality of software defines the quality of a machine
• Tractors and other agricultural machines are safety critical systems
• Time, cost and quality have to be balanced
• >> Software can be easily and quickly modified <<
• Software engineering is defined by its validation process
• Software does not create parts cost
• Software is a product in general
1) General aspects of software engineering in tractors …
Bonn, 03. September 2006
1. Basic (tractor) control functions
2. Human machine interface (HMI)
3. Automatic functions
4. Data management
5. Service and support
2) Software applications in tractors
AreasAreas of of softwaresoftware applicationsapplications in in tractorstractors
Bonn, 03. September 20062) Software applications in tractors
• Engine• Transmission• Hydraulic spool valves and power lift• Power train (4-WD, diff.lock)• PTO• Steering• Brake systems • Electrics (lighting, washer, …)• HVAC
Optimisation of mechanical functions: Efficiency = ‘Load sensing’ Ease of operation Flexibility of production Supervision to reduce wear and prevent damage Diagnostic and calibration
Basic Basic controlcontrol functionsfunctions ((tractortractor))
Bonn, 03. September 20062) Software applications in tractors
• Dashboard• Graphical display systems (terminal)• Operator panels (armrest) • Multifunction levers• Warning and error indication • External or remote operation
Identification of driver to a machine Ergonomic and intuitive operation Driver focus on main or critical function Simple operation / easy to learn ↔ option for manual optimisation of tractor
functions via menu setups
HumanHuman--MachineMachine--InterfaceInterface (HMI)(HMI)
Bonn, 03. September 20062) Software applications in tractors
• Engine – transmission management
• Headland management (automatic operation sequence)
• Automatic steering via GPS / camera / sensors
• Implement process control
• Precision farming process control
Optimisation for unskilled drivers Driver focus on main or critical function Intuitive and context sensitive operation of parallel processes
Automatic Automatic FunctionsFunctions
Bonn, 03. September 20062) Software applications in tractors
Data acquisition and logging
• Machine (load, condition, performance, position ..)
• Agricultural working process
• Driver and labour hours
• (chemical) substances and material flow
Office Software
• Documentation / Plant Production
• Precision Farming
• Fleet management
• Accounting
Legal requirements for traceability of food production Economic traceability and optimisation Driver is not owner of the process
DataData ManagementManagement
Bonn, 03. September 20062) Software applications in tractors
• Diagnostic systems (off board)
• Flash download and parameterize the system atassembly line
• Field programming systems for software and parameter update
Reduce downtime and costs for service Tracking of machine during life cycle Increase flexibility in production Logistic handling of software as a (‘mechanical’) part Prevent manipulation e.g. speed control, engine power
Service and SupportService and Support
Bonn, 03. September 2006
Electronic architecture of a top end standard tractor
2) Software applications in tractors …
Bonn, 03. September 2006
• Network 4 (CAN) Busses
• 20 ECUs
• Software per ECU
Multifunction armrest: 16.000 lines of code (50 files)
Dashboard: 28.000 lines of code (94 files)
Main tractor-ECU: 120.000 lines of code(230 files)
Vario-Terminal: 160.000 lines of code
Terminal with Linux OS: 50.000.000 lines of code (OS) and
250.000 lines of code (application)
• > 90 % C-Code;
• 50 % Development by OEM
• 50% Development by suppliers
2) Software applications in tractors …
Complexity Complexity
Bonn, 03. September 2006
• Low volumes of components
• Differentiation of products
• Short life cycles of electronic hardware components: μ-processor, memory, …
• Long life cycle of machines in production: 10 … 15 years
and of spare parts: 15…18 years
• Safety critical system: hazards as machine operation and in public road traffic
• Security against manipulation: e.g. speed control or engine power
• Costs of hardware decrease in time compared to performance, but add to each tractor
• Reusability of software is an economic must
3) Economical requirements for software design …
Challenges for software design Challenges for software design
Bonn, 03. September 2006
Hardware independence
Increasing number of software modules per microprocessor
Integration of software modules from (different) suppliers in an (any) ECU
Network topology
Real-Time operating system
Generic software modules
Generic communication protocols
inside microprocessor units = Virtual bus system
and on bus networks (CAN)
Definite and detailed software design and verification processes
Software version control system
3) Economical requirements for software design …
Strategies and Solutions Strategies and Solutions
Bonn, 03. September 2006
Hardware Microcontroller
3) Economical requirements for software design …
Core Software Microcontroller
Basic Software:• I/O Interface
• Network communication management (CAN, …)
ApplicationSoftw
are 1
ApplicationSoftw
are 2
ApplicationSoftw
are n
ECU software architectureECU software architecture
Real-Tim
eO
peratingsystem
ECU
External bussystem (CAN,..)
Internal virtualbus system (GD)
Bonn, 03. September 2006
Hardware MicrocontrollerCore Software Microcontroller
Basic Software
Module
Module
Hardware MicrocontrollerCore Software Microcontroller
Basic Software
Module
Module
Module
Hardware Microcontroller
3) Economical requirements for software design …
Core Software Microcontroller
Basic Software
Module
Module
Module
ECU ‚A‘
ECU ‚B‘
ECU ‚C‘
InterchangeabilityInterchangeability of software modules of software modules
External bussystem (CAN,..)
Bonn, 03. September 2006
- Debugger - Code tester- Simulation
- Test bench - Tractor integration
- Network integration
- Field test - Fleet test
- Tractor function
- Hardware - Software architecture- Network topology
VV--Model: design and validation cycleModel: design and validation cycle
4) Software development process …
Requirements Definition
Specific Design
Basic Design
Component Implementation
ComponentTest
Integration Test(ECU)
System Testing (HIL, Network)
Vehicle Testing
- Module - Control algorithm- Simulation
- C-coding
- Code generation
Bonn, 03. September 2006
Quality Management of Software: DesignQuality Management of Software: Design
Requirements Definition
Specific Design
Basic Design
Component Implementation
• Risk analysis
• Functional specification
• FMEA
• Software specification
• Network and communication layout
• Manual code generation
• Simulation, rapid prototyping and C-code generator
4) Software development process …
Bonn, 03. September 2006
Diversification of test methods and persons:
• Modul level - manual and automatic test:
Debugger, Emulator,
Hardware-in-the loop: simulation and stimulation
Automatic code test tools
• Integration level in tractor:
Validation of functionality
Validation of FMEA
• Field test
• Fleet test
»Does a modification of 1 line of code require the full test cycle?«
4) Software development process …
Quality Management of Software: ValidationQuality Management of Software: Validation
ComponentTest
Integration Test(ECU)
System Testing (HiL, Network)
Vehicle Testing
Bonn, 03. September 2006
Update of one module has to be consistent to any other module in any other ECU in the network of a tractor … for the whole life cycle!
5) Maintenance of software …
Maxim of software updates Maxim of software updates
Bonn, 03. September 2006
• Hardware - ID
• Bootloader Flash - ID
• Applikationssoftware - 1 - ID
• Applikationssoftware - 2 – ID
• …
• Applikationssoftware - n - ID
• Parametersatz - ID
Identification of hard- and software of each ECU and each module in a tractor
Software version control for ECU update Software version control for ECU update
• Hardware - ID
• Bootloader Flash - ID
• Applikationssoftware - 1 - ID
• Applikationssoftware - 2 – ID
• …
• Applikationssoftware - n - ID
• Parametersatz - ID
• Hardware - ID
• Bootloader Flash - ID
• Applikationssoftware - 1 - ID
• Applikationssoftware - 2 – ID
• …
• Applikationssoftware - n - ID
• Parametersatz - ID
5) Maintenance of software - update process …
• Hardware - ID
• Bootloader Flash - ID
• Applikationssoftware - 1 - ID
• Applikationssoftware - 2 – ID
• …
• Applikationssoftware - n - ID
• Parametersatz - ID
• Hardware - ID
• Bootloader Flash - ID
• Applikationssoftware - 1 - ID
• Applikationssoftware - 2 – ID
• …
• Applikationssoftware - n - ID
• Parametersatz - ID
Bonn, 03. September 20065) Maintenance of software - update process …
• Data base contains all relevant software modules
• ‚Label‘ is defined as a tested combination of soft- und hardware-versions
• Update means flashing all modules and ECUs to achieve a higher or lower level
• Update of a single ECU or module is not possible
Software update Software update
Bonn, 03. September 2006
• Modular architecture in software und communication (generic protocol)
• Identification and registration of individual software equipment of a customer tractor
• Commercial release process for a software update on dealer level
• Protection against copy
• Organisation, administration and logistic processes
6) Software is a product in general …
Bonn, 03. September 2006
… the automotive approach: … the agricultural machinery approach:
AUTomotive Open System ARchitecture
7) Integration across manufacturers - ISOBUS …
‘‘ISOBUSISOBUS’’ ISO 11783ISO 11783
Standards, the way to handle complex electronic structures:Standards, the way to handle complex electronic structures:
Bonn, 03. September 2006
Manufacturer ..
7) Integration across manufacturers - ISOBUS …
Manufacturer CManufacturer B
Manufacturer A
Manufacturer ..Manufacturer C
Manufacturer BManufacturer A
Manufacturer ..Manufacturer C
Manufacturer BManufacturer A
Manufacturer ..Manufacturer C
Manufacturer BManufacturer A
Manufacturer ..Manufacturer C
Manufacturer BManufacturer A
Manufacturer ..Manufacturer C
Manufacturer BManufacturer A
Bonn, 03. September 2006
An approach for further manufacturer integrationAn approach for further manufacturer integration
AnwenderAnwender--PlattformPlattform ISOBUS ISOBUS e.Ve.V..
• Membership for manufacturers, associations, suppliers, test institutes
• Platform for electronic engineering
• Coordination of industrial introduction of electronic standards
• Development of test tools and test scenarios and documentation (data base)
• Organisation and performance of workshops, plugfests and certification tests
• Coordination of technical enhancements
• Training
7) Integration across manufacturers - ISOBUS …
Bonn, 03. September 2006
Functionality of software:Functionality of software:• Automatic control of machines and processes
• Field robotic
Complexity of software: Complexity of software: • Number of modules and their interdependencies
• Integration of machine networks and data linkage to office software
Engineering efforts and expenses:Engineering efforts and expenses:• … for design and development of software
• … for test and validation of software
• … for administration and support of software in production und service
8) Conclusions …
Growing increase of Growing increase of ……
Bonn, 03. September 2006
• ‘Think in processes’
• Improve methods for absolute encapsulation of software modules
• ‘Functional safety’: improve robustness of software
• Extension of standards e.g. ‘ISOBUS’ (ISO 11783)
• Establish models and platforms for software development processes between manufacturers
• Establish economic platforms for software cooperation between OEM and suppliers
• Open source systems – or at least open architecture
8) Conclusions …
…… possible approachespossible approaches