22.02.2013 Views

Software in Tractors: Aspects of Development ... - Club of Bologna

Software in Tractors: Aspects of Development ... - Club of Bologna

Software in Tractors: Aspects of Development ... - Club of Bologna

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Session: Information Technology for Agricultural Mach<strong>in</strong>es<br />

Bonn, 03. September 2006<br />

» <strong>S<strong>of</strong>tware</strong> <strong>in</strong> <strong>Tractors</strong>:<br />

<strong>Aspects</strong> <strong>of</strong> <strong>Development</strong>, Ma<strong>in</strong>tenance and Support «<br />

Dipl.-Ing. Ra<strong>in</strong>er H<strong>of</strong>mann, AGCO GmbH, Germany


Bonn, 03. September 2006<br />

<strong>Development</strong> <strong>of</strong> <strong>S<strong>of</strong>tware</strong> is like build<strong>in</strong>g a Cathedral …


Structure<br />

(1) General aspects <strong>of</strong> s<strong>of</strong>tware eng<strong>in</strong>eer<strong>in</strong>g (<strong>in</strong> agricultural mach<strong>in</strong>es)<br />

(2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors – an overview<br />

(3) Economical requirements for s<strong>of</strong>tware<br />

(4) <strong>S<strong>of</strong>tware</strong> development process<br />

(5) Ma<strong>in</strong>tenance <strong>of</strong> s<strong>of</strong>tware<br />

(6) <strong>S<strong>of</strong>tware</strong> as a product<br />

(7) Integration across manufactures – ISOBUS and other standards<br />

(8) Conclusions<br />

Bonn, 03. September 2006


1) General aspects <strong>of</strong> s<strong>of</strong>tware eng<strong>in</strong>eer<strong>in</strong>g <strong>in</strong> tractors …<br />

• <strong>S<strong>of</strong>tware</strong> controls all vital functions <strong>of</strong> agricultural mach<strong>in</strong>es<br />

• Technical <strong>in</strong>novation is driven by s<strong>of</strong>tware<br />

Bonn, 03. September 2006<br />

• <strong>S<strong>of</strong>tware</strong> is key and core competence <strong>in</strong> agricultural mach<strong>in</strong>ery companies<br />

• Manufacturers <strong>in</strong>tellectual property <strong>in</strong> s<strong>of</strong>tware eng<strong>in</strong>eer<strong>in</strong>g is a key factor<br />

• Quality <strong>of</strong> s<strong>of</strong>tware def<strong>in</strong>es the quality <strong>of</strong> a mach<strong>in</strong>e<br />

• <strong>Tractors</strong> and other agricultural mach<strong>in</strong>es are safety critical systems<br />

• Time, cost and quality have to be balanced<br />

• >> <strong>S<strong>of</strong>tware</strong> can be easily and quickly modified


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors<br />

Areas <strong>of</strong> s<strong>of</strong>tware applications <strong>in</strong> tractors<br />

1. Basic (tractor) control functions<br />

2. Human mach<strong>in</strong>e <strong>in</strong>terface (HMI)<br />

3. Automatic functions<br />

4. Data management<br />

5. Service and support<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors<br />

Basic control functions (tractor tractor)<br />

• Eng<strong>in</strong>e<br />

• Transmission<br />

• Hydraulic spool valves and power lift<br />

• Power tra<strong>in</strong> (4-WD, diff.lock)<br />

• PTO<br />

• Steer<strong>in</strong>g<br />

• Brake systems<br />

• Electrics (light<strong>in</strong>g, washer, …)<br />

• HVAC<br />

Optimisation <strong>of</strong> mechanical functions:<br />

� Efficiency = ‘Load sens<strong>in</strong>g’<br />

� Ease <strong>of</strong> operation<br />

� Flexibility <strong>of</strong> production<br />

� Supervision to reduce wear and prevent damage<br />

� Diagnostic and calibration<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors<br />

Human-Mach<strong>in</strong>e<br />

Human Mach<strong>in</strong>e-Interface Interface (HMI)<br />

• Dashboard<br />

• Graphical display systems (term<strong>in</strong>al)<br />

• Operator panels (armrest)<br />

• Multifunction levers<br />

• Warn<strong>in</strong>g and error <strong>in</strong>dication<br />

• External or remote operation<br />

� Identification <strong>of</strong> driver to a mach<strong>in</strong>e<br />

� Ergonomic and <strong>in</strong>tuitive operation<br />

� Driver focus on ma<strong>in</strong> or critical function<br />

� Simple operation / easy to learn ↔ option for manual optimisation <strong>of</strong> tractor<br />

functions via menu setups<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors<br />

Automatic Functions<br />

• Eng<strong>in</strong>e – transmission management<br />

• Headland management (automatic operation sequence)<br />

• Automatic steer<strong>in</strong>g via GPS / camera / sensors<br />

• Implement process control<br />

• Precision farm<strong>in</strong>g process control<br />

� Optimisation for unskilled drivers<br />

� Driver focus on ma<strong>in</strong> or critical function<br />

� Intuitive and context sensitive operation <strong>of</strong> parallel processes<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors<br />

Data acquisition and logg<strong>in</strong>g<br />

• Mach<strong>in</strong>e (load, condition, performance, position ..)<br />

• Agricultural work<strong>in</strong>g process<br />

• Driver and labour hours<br />

• (chemical) substances and material flow<br />

Office <strong>S<strong>of</strong>tware</strong><br />

• Documentation / Plant Production<br />

• Precision Farm<strong>in</strong>g<br />

• Fleet management<br />

• Account<strong>in</strong>g<br />

Data Management<br />

� Legal requirements for traceability <strong>of</strong> food production<br />

� Economic traceability and optimisation<br />

� Driver is not owner <strong>of</strong> the process<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors<br />

Service and Support<br />

• Diagnostic systems (<strong>of</strong>f board)<br />

• Flash download and parameterize the system at<br />

assembly l<strong>in</strong>e<br />

• Field programm<strong>in</strong>g systems for s<strong>of</strong>tware and<br />

parameter update<br />

� Reduce downtime and costs for service<br />

� Track<strong>in</strong>g <strong>of</strong> mach<strong>in</strong>e dur<strong>in</strong>g life cycle<br />

� Increase flexibility <strong>in</strong> production<br />

� Logistic handl<strong>in</strong>g <strong>of</strong> s<strong>of</strong>tware as a (‘mechanical’) part<br />

� Prevent manipulation e.g. speed control, eng<strong>in</strong>e power<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors …<br />

Electronic architecture <strong>of</strong> a top end standard tractor<br />

Bonn, 03. September 2006


2) <strong>S<strong>of</strong>tware</strong> applications <strong>in</strong> tractors …<br />

Complexity<br />

• Network 4 (CAN) Busses<br />

• 20 ECUs<br />

• <strong>S<strong>of</strong>tware</strong> per ECU<br />

� Multifunction armrest: 16.000 l<strong>in</strong>es <strong>of</strong> code (50 files)<br />

� Dashboard: 28.000 l<strong>in</strong>es <strong>of</strong> code (94 files)<br />

� Ma<strong>in</strong> tractor-ECU: 120.000 l<strong>in</strong>es <strong>of</strong> code(230 files)<br />

� Vario-Term<strong>in</strong>al: 160.000 l<strong>in</strong>es <strong>of</strong> code<br />

� Term<strong>in</strong>al with L<strong>in</strong>ux OS: 50.000.000 l<strong>in</strong>es <strong>of</strong> code (OS) and<br />

• > 90 % C-Code;<br />

• � 50 % <strong>Development</strong> by OEM<br />

• � 50% <strong>Development</strong> by suppliers<br />

250.000 l<strong>in</strong>es <strong>of</strong> code (application)<br />

Bonn, 03. September 2006


3) Economical requirements for s<strong>of</strong>tware design …<br />

Challenges for s<strong>of</strong>tware design<br />

• Low volumes <strong>of</strong> components<br />

• Differentiation <strong>of</strong> products<br />

• Short life cycles <strong>of</strong> electronic hardware components: μ-processor, memory, …<br />

• Long life cycle <strong>of</strong> mach<strong>in</strong>es <strong>in</strong> production: 10 … 15 years<br />

and <strong>of</strong> spare parts: 15…18 years<br />

• Safety critical system: hazards as mach<strong>in</strong>e operation and <strong>in</strong> public road traffic<br />

• Security aga<strong>in</strong>st manipulation: e.g. speed control or eng<strong>in</strong>e power<br />

Bonn, 03. September 2006<br />

• Costs <strong>of</strong> hardware decrease <strong>in</strong> time compared to performance, but add to each tractor<br />

• Reusability <strong>of</strong> s<strong>of</strong>tware is an economic must


3) Economical requirements for s<strong>of</strong>tware design …<br />

Strategies and Solutions<br />

� Hardware <strong>in</strong>dependence<br />

� Increas<strong>in</strong>g number <strong>of</strong> s<strong>of</strong>tware modules per microprocessor<br />

� Integration <strong>of</strong> s<strong>of</strong>tware modules from (different) suppliers <strong>in</strong> an (any) ECU<br />

� Network topology<br />

� Real-Time operat<strong>in</strong>g system<br />

� Generic s<strong>of</strong>tware modules<br />

� Generic communication protocols<br />

<strong>in</strong>side microprocessor units = Virtual bus system<br />

and on bus networks (CAN)<br />

� Def<strong>in</strong>ite and detailed s<strong>of</strong>tware design and verification processes<br />

� <strong>S<strong>of</strong>tware</strong> version control system<br />

Bonn, 03. September 2006


3) Economical requirements for s<strong>of</strong>tware design …<br />

ECU s<strong>of</strong>tware architecture<br />

External bus<br />

system (CAN,..)<br />

Real-Time Operat<strong>in</strong>g system<br />

Application <strong>S<strong>of</strong>tware</strong> 1<br />

Application <strong>S<strong>of</strong>tware</strong> 2<br />

Internal virtual<br />

bus system (GD)<br />

Basic <strong>S<strong>of</strong>tware</strong>:<br />

• I/O Interface<br />

• Network communication management (CAN, …)<br />

Core <strong>S<strong>of</strong>tware</strong> Microcontroller<br />

Hardware Microcontroller<br />

Bonn, 03. September 2006<br />

Application <strong>S<strong>of</strong>tware</strong> n<br />

ECU


3) Economical requirements for s<strong>of</strong>tware design …<br />

Interchangeability <strong>of</strong> s<strong>of</strong>tware modules<br />

Module<br />

Module<br />

Basic <strong>S<strong>of</strong>tware</strong><br />

Core <strong>S<strong>of</strong>tware</strong> Microcontroller<br />

Hardware Microcontroller<br />

External bus<br />

system (CAN,..)<br />

Module<br />

Module<br />

ECU ‚C‘<br />

Basic <strong>S<strong>of</strong>tware</strong><br />

Module<br />

Core <strong>S<strong>of</strong>tware</strong> Microcontroller<br />

Hardware Microcontroller<br />

Module<br />

Module Hardware Microcontroller<br />

Basic <strong>S<strong>of</strong>tware</strong><br />

Core <strong>S<strong>of</strong>tware</strong> Microcontroller<br />

Bonn, 03. September 2006<br />

ECU ‚B‘<br />

Module<br />

ECU ‚A‘


4) <strong>S<strong>of</strong>tware</strong> development process …<br />

V-Model: Model: design and validation cycle<br />

- Tractor function<br />

- Hardware<br />

- <strong>S<strong>of</strong>tware</strong> architecture<br />

- Network topology<br />

- Module<br />

- Control algorithm<br />

- Simulation<br />

Requirements<br />

Def<strong>in</strong>ition<br />

Basic Design<br />

- C-cod<strong>in</strong>g<br />

Specific Design<br />

- Code generation<br />

Component<br />

Implementation<br />

Component<br />

Test<br />

Integration Test<br />

(ECU)<br />

Vehicle Test<strong>in</strong>g<br />

System Test<strong>in</strong>g<br />

(HIL, Network)<br />

Bonn, 03. September 2006<br />

- Test bench<br />

- Tractor <strong>in</strong>tegration<br />

- Network <strong>in</strong>tegration<br />

- Debugger<br />

- Code tester<br />

- Simulation<br />

- Field test<br />

- Fleet test


4) <strong>S<strong>of</strong>tware</strong> development process …<br />

Quality Management <strong>of</strong> <strong>S<strong>of</strong>tware</strong>: Design<br />

Requirements<br />

Def<strong>in</strong>ition<br />

Basic Design<br />

Specific Design<br />

Component<br />

Implementation<br />

• Risk analysis<br />

• Functional specification<br />

• FMEA<br />

• <strong>S<strong>of</strong>tware</strong> specification<br />

• Network and communication layout<br />

• Manual code generation<br />

Bonn, 03. September 2006<br />

• Simulation, rapid prototyp<strong>in</strong>g and C-code generator


4) <strong>S<strong>of</strong>tware</strong> development process …<br />

Quality Management <strong>of</strong> <strong>S<strong>of</strong>tware</strong>: Validation<br />

Diversification <strong>of</strong> test methods and persons:<br />

• Modul level - manual and automatic test:<br />

� Debugger, Emulator,<br />

� Hardware-<strong>in</strong>-the loop: simulation and stimulation<br />

� Automatic code test tools<br />

• Integration level <strong>in</strong> tractor:<br />

� Validation <strong>of</strong> functionality<br />

� Validation <strong>of</strong> FMEA<br />

• Field test<br />

• Fleet test<br />

Component<br />

Test<br />

»Does a modification <strong>of</strong> 1 l<strong>in</strong>e <strong>of</strong> code require the full test cycle?«<br />

Integration Test<br />

(ECU)<br />

Bonn, 03. September 2006<br />

Vehicle Test<strong>in</strong>g<br />

System Test<strong>in</strong>g<br />

(HiL, Network)


5) Ma<strong>in</strong>tenance <strong>of</strong> s<strong>of</strong>tware …<br />

Maxim <strong>of</strong> s<strong>of</strong>tware updates<br />

Update <strong>of</strong> one module has to be consistent to any other module <strong>in</strong> any<br />

other ECU <strong>in</strong> the network <strong>of</strong> a tractor … for the whole life cycle!<br />

Bonn, 03. September 2006


5) Ma<strong>in</strong>tenance <strong>of</strong> s<strong>of</strong>tware - update process …<br />

<strong>S<strong>of</strong>tware</strong> version control for ECU update<br />

• Hardware - ID<br />

• Bootloader Flash - ID<br />

• Applikationss<strong>of</strong>tware - 1 - ID • Applikationss<strong>of</strong>tware - 2 – ID<br />

• Applikationss<strong>of</strong>tware - 2 – ID•<br />

…<br />

• …<br />

• Applikationss<strong>of</strong>tware - n - ID • Parametersatz - ID<br />

• Parametersatz - ID<br />

• Hardware - ID<br />

• Bootloader Flash - ID<br />

• Applikationss<strong>of</strong>tware - 1 - ID<br />

• Applikationss<strong>of</strong>tware - n - ID<br />

• Hardware - ID<br />

• Bootloader Flash - ID<br />

• Applikationss<strong>of</strong>tware - 1 - ID<br />

• Applikationss<strong>of</strong>tware - 2 – ID<br />

• …<br />

• Applikationss<strong>of</strong>tware - n - ID<br />

• Parametersatz - ID<br />

• Hardware - ID<br />

• Bootloader Flash - ID<br />

• Applikationss<strong>of</strong>tware - 1 - ID<br />

• Applikationss<strong>of</strong>tware - 2 – ID<br />

Bonn, 03. September 2006<br />

Identification <strong>of</strong> hard- and s<strong>of</strong>tware <strong>of</strong> each ECU and each module <strong>in</strong> a tractor<br />

• …<br />

• Applikationss<strong>of</strong>tware - n - ID<br />

• Parametersatz - ID<br />

• Hardware - ID<br />

• Bootloader Flash - ID<br />

• Applikationss<strong>of</strong>tware - 1 - ID<br />

• Applikationss<strong>of</strong>tware - 2 – ID<br />

• …<br />

• Applikationss<strong>of</strong>tware - n - ID<br />

• Parametersatz - ID


5) Ma<strong>in</strong>tenance <strong>of</strong> s<strong>of</strong>tware - update process …<br />

<strong>S<strong>of</strong>tware</strong> update<br />

• Data base conta<strong>in</strong>s all relevant s<strong>of</strong>tware modules<br />

• ‚Label‘ is def<strong>in</strong>ed as a tested comb<strong>in</strong>ation <strong>of</strong> s<strong>of</strong>t- und hardware-versions<br />

Bonn, 03. September 2006<br />

• Update means flash<strong>in</strong>g all modules and ECUs to achieve a higher or lower level<br />

• Update <strong>of</strong> a s<strong>in</strong>gle ECU or module is not possible


6) <strong>S<strong>of</strong>tware</strong> is a product <strong>in</strong> general …<br />

• Modular architecture <strong>in</strong> s<strong>of</strong>tware und communication (generic protocol)<br />

Bonn, 03. September 2006<br />

• Identification and registration <strong>of</strong> <strong>in</strong>dividual s<strong>of</strong>tware equipment <strong>of</strong> a customer tractor<br />

• Commercial release process for a s<strong>of</strong>tware update on dealer level<br />

• Protection aga<strong>in</strong>st copy<br />

• Organisation, adm<strong>in</strong>istration and logistic processes


7) Integration across manufacturers - ISOBUS …<br />

Standards, the way to handle complex electronic structures:<br />

Bonn, 03. September 2006<br />

… the automotive approach: … the agricultural mach<strong>in</strong>ery approach:<br />

AUTomotive Open System ARchitecture<br />

‘ISOBUS ISOBUS’ ISO 11783


7) Integration across manufacturers - ISOBUS …<br />

Manufacturer ..<br />

Manufacturer C<br />

Manufacturer B<br />

Manufacturer A<br />

Manufacturer ..<br />

Manufacturer C<br />

Manufacturer B<br />

Manufacturer A<br />

Bonn, 03. September 2006<br />

Manufacturer ..<br />

Manufacturer C<br />

Manufacturer B<br />

Manufacturer A<br />

Manufacturer ..<br />

Manufacturer C<br />

Manufacturer B<br />

Manufacturer A<br />

Manufacturer ..<br />

Manufacturer C<br />

Manufacturer B<br />

Manufacturer A<br />

Manufacturer ..<br />

Manufacturer C<br />

Manufacturer B<br />

Manufacturer A


7) Integration across manufacturers - ISOBUS …<br />

An approach for further manufacturer <strong>in</strong>tegration<br />

Anwender-Plattform<br />

Anwender Plattform ISOBUS e.V. e.V<br />

• Membership for manufacturers, associations,<br />

suppliers, test <strong>in</strong>stitutes<br />

• Platform for electronic eng<strong>in</strong>eer<strong>in</strong>g<br />

• Coord<strong>in</strong>ation <strong>of</strong> <strong>in</strong>dustrial <strong>in</strong>troduction <strong>of</strong><br />

electronic standards<br />

• <strong>Development</strong> <strong>of</strong> test tools and test scenarios and<br />

documentation (data base)<br />

• Organisation and performance <strong>of</strong> workshops,<br />

plugfests and certification tests<br />

• Coord<strong>in</strong>ation <strong>of</strong> technical enhancements<br />

• Tra<strong>in</strong><strong>in</strong>g<br />

Bonn, 03. September 2006


8) Conclusions …<br />

Grow<strong>in</strong>g <strong>in</strong>crease <strong>of</strong> …<br />

Functionality <strong>of</strong> s<strong>of</strong>tware:<br />

• Automatic control <strong>of</strong> mach<strong>in</strong>es and processes<br />

• Field robotic<br />

Complexity <strong>of</strong> s<strong>of</strong>tware:<br />

• Number <strong>of</strong> modules and their <strong>in</strong>terdependencies<br />

• Integration <strong>of</strong> mach<strong>in</strong>e networks and data l<strong>in</strong>kage to <strong>of</strong>fice s<strong>of</strong>tware<br />

Eng<strong>in</strong>eer<strong>in</strong>g efforts and expenses:<br />

• … for design and development <strong>of</strong> s<strong>of</strong>tware<br />

• … for test and validation <strong>of</strong> s<strong>of</strong>tware<br />

Bonn, 03. September 2006<br />

• … for adm<strong>in</strong>istration and support <strong>of</strong> s<strong>of</strong>tware <strong>in</strong> production und service


8) Conclusions …<br />

… possible approaches<br />

• ‘Th<strong>in</strong>k <strong>in</strong> processes’<br />

• Improve methods for absolute encapsulation <strong>of</strong> s<strong>of</strong>tware modules<br />

• ‘Functional safety’: improve robustness <strong>of</strong> s<strong>of</strong>tware<br />

• Extension <strong>of</strong> standards e.g. ‘ISOBUS’ (ISO 11783)<br />

Bonn, 03. September 2006<br />

• Establish models and platforms for s<strong>of</strong>tware development processes between manufacturers<br />

• Establish economic platforms for s<strong>of</strong>tware cooperation between OEM and suppliers<br />

• Open source systems – or at least open architecture

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!