• No results found

Det första som bör göras i ett framtida förbättringsarbete är att testa reglerfunktionen i en traktor i verkligheten. En utförlig utvärdering av detta skulle ge ett mätbart mått på hur väl

plantmodellen stämmer överens med verkligheten. Det skulle också ge möjlighet till att justera reglerparametrarna efter det riktiga fysiska systemet. Ett annat förslag för framtida utveckling är att försöka sätta stabilare initialvärden för tryck i hydraulcylindrarnas kammare. Att ange de trycknivåer som kammarna stabiliserade sig vid avhjälpte inte insvängningstransienten. Om värden som inte försatte cylindrarnas trycknivåer i svängning kunde hittas så skulle animeringen mest troligt kunna animeras i realtid även under de första sekunderna. Skulle detta visa sig svårt vore ett alternativ att i förväg simulera den tunga insvängningstransienten, spara ned det state modellen befinner sig i efter transienten och sedan initialisera plantmodellen därifrån.

Tryckoscillationerna vid lätta materialvikter skulle behöva analyseras djupare och åtgärdas. Det är dock inget som borde påverka själva nedställningsfunktionen utan endast något som verkade uppstå i själva simuleringen.

6

Slutsats

En plantmodell för Ålös frontlastare Quicke Q5M med tillhörande mekanik och hydraulik mo- dellerades i Simulink Simscape. Plantmodellen kunde simuleras och animeras i realtid efter ett ungefär 2 sekunder långt insvängningsförlopp, samt hantera nya indata med periodtid 10 ms på Ålös datorer. Genom att analysera sensordata från tryck- och vinkelgivare från både en riktig frontlastares loggar och den egna plantmodellen kunde en algoritm för detektering av kontakt med underlag konstrueras. Algoritmen användes till att utveckla en reglerfunktion för automatisk nedställning av material. Reglerfunktionen testades tillsammans med plantmodellen under olika förhållanden samt direkt på loggarna från riktig frontlastare. Reglerfunktionen kunde simuleras och animeras i 3D i en diskret reglerloop tillsammans med den kontinuerliga plantmo- dellen i realtid. Tillsammans med plantmodellen kunde det visas att reglerfunktionen fungerade för vikter mellan 100-2000 kg. När algoritmen testades på Ålös loggar från riktig frontlastare kunde den detektera kontakt med underlag när material ställts ned med medelhög fart utan lastdämpning. Plantmodellen effektiviserade utvecklingen av reglerfunktionen avsevärt eftersom varje steg och förändring som gjordes under funktionsutvecklingen kunde testas mot plantmo- dellen direkt i datorsimulering. Om C-kod hade behövts genereras i Simulink och läggas över i en traktors ECU inför varje test hade det tagit betydligt längre tid. För framtida utveckling av simuleringsmodellen rekommenderas det att göra utförligare jämförelser med en frontlastare i verkligheten. Framtida utveckling av reglerfunktionen rekommenderas att börja med tester i riktig traktor. Om dessa tester lyckas kan det undersökas om lantbrukares dagliga arbete skulle kunna effektiviseras genom att använda reglerfunktionen.

Referenser

[1] Song, M-Z., Kang, S-W., Chung, S-O., Kim, K-D., Chae, Y-S., Lee, D-H., Kim, Y-J., Yu, S-H. och Lee, K-H. 2013.

Development of Path Planning Algorithm for an Autonomous Mower Tractor. IFAC Pro- ceedings Volumes. 46(18), pp.154–158.

[2] Lunner-Kolstrup, C., Hörndahl, T. och Karttunen, J.P. 2018.

Farm operators’ experiences of advanced technology and automation in Swedish agriculture: a pilot study. Journal of Agromedicine. 23(3), pp.215–226.

[3] Yung, I. 2017.

Automation of front-end loaders: electronic self leveling and payload estimation. [4] Yung, I., Vázquez, C., och Freidovich, L. 2017.

Robust position control design for a cylinder in mobile hydraulics applications. Control Engi- neering Practice. 69, pp.36–49.

[5] Ingvast, H. och Institutet för tillämpad hydraulik 1990.

Hydraulikens grunder, teorier och begrepp 2., [utök. och rev.] utg.. Örnsköldsvik: Institutet för tillämpad hydraulik (ITH).

[6] Cristofori, D. 2013.

Advanced control strategies for mobile hydraulic applications. [Online] ProQuest Disserta- tions Publishing. Available from: http://search.proquest.com/docview/1519661746/.

[7] Liu, J., Tan, J., Mao, E., Song, Z. och Zhu, Z. 2016.

Proportional directional valve based automatic steering system for tractors. Frontiers of Information Technology & Electronic Engineering. 17(5), pp.458–464.

[8] Dong, Z., Zhang, Q. och Han, S. 2002.

Control of an electrohydraulic steering system using a PID controller with a nonlinear com- pensation algorithm, Proceedings of SPIE - The International Society for Optical Enginee- ring In:, pp.87–95.

[9] Lambert, J.D. 1991.

Numerical methods for ordinary differential systems : the initial value problem. Chichester: Wiley.

[10] Choose an ODE Solver

https://se.mathworks.com/help/matlab/math/choose-an-ode-solver.html (Hämtad 13 maj 2019)

[11] Numerical Methods for Differential Equations

http://www.maths.lth.se/na/courses/FMN130/media/material/Chapter1.08a.pdf (Hämtad 3 april 2019) (Hämtad 3 april 2019)

[12] Adams, R.A. och Essex, C. 2017.

Calculus : a complete course 9. ed.. Toronto: Pearson Addison Wesley. [13] Trapezoidal rule (differential equations)

https://en.wikipedia.org/wiki/Trapezoidal_rule_(differential_equations) (Hämtad 17 maj 2019)

[15] Implicit Methods for Linear and Nonlinear Systems of ODEs

http://web.mit.edu/16.90/BackUp/www/pdfs/Chapter9.pdf (Hämtad 13 maj 2019) [16] Zero-Crossing Detection

https://se.mathworks.com/help/simulink/ug/zero-crossing-detection.html (Häm- tad 13 maj 2019)

[17] Solver Profiler Interface

https://se.mathworks.com/help/simulink/ug/solver-profiler-interface.html (Hämtad 13 maj 2019)

[18] Jansson, P-Å., Grahn, R. och Enelund, M. 2018. Mekanik: statik och dynamik Fjärde upplagan. [19] Moment of inertia

https://en.wikipedia.org/wiki/Moment_of_inertia (Hämtad 18 april 2019) [20] Isaksson, O. 1991.

Grundläggande hydraulik 3 uppl. Luleå Hydcon. [21] Manu, I. C. S. 2013

Sistema hidráulico general, https://commons.wikimedia.org/wiki/File:Hydraulic-system.gif CC BY-SA 4.0 (Hämtad 13 maj 2019)

[22] Walvoil DLM122 Mechatronic

http://www.walvoil.com/products/valves-for-special-applications/sdm122–dlm122 (Hämtad 3 april 2019)

[23] Molin, B. 2009. Analog elektronik (2. uppl.). Lund: Studentlitteratur. [24] Bengtsson, L. 2012.

Elektriska mätsystem och mätmetoder 1. uppl.. Lund: Studentlitteratur. [25] Lathi, B.P., Green, R.A. 2014.

Essentials of Digital Signal Processing, First edition. Cambridge University Press. [26] Thomas, B. 2016.

Modern reglerteknik. Femte upplagan [27] TSIU61: Reglerteknik Föreläsning 4

https://www.control.isy.liu.se/student/tsiu61/file/le4_handout.pdf (Hämtad 18 maj 2019)

[28] Svrcek, W. Y. Y., Mahoney, D. P. P., och Young, B. R. R. 2007.

A Real-Time Approach to Process Control: Second Edition (pp. 1–325). John Wiley and Sons.

[29] Simscape Multibody

https://se.mathworks.com/products/simmechanics.html (Hämtad 13 maj 2019) [30] Jameson L. T. 2009.

Revolute joint,

https://en.wikipedia.org/wiki/Revolute_joint#/media/File:Revolute_joint.svg, CC BY-SA 3.0 (Hämtad 3 april 2019)

[31] Jameson L. T. 2009. Prismatic joint,

https://en.wikipedia.org/wiki/Prismatic_joint#/media/File:Prismatic_joint.svg, CC BY-SA 3.0 (Hämtad 3 april 2019)

[32] Simscape Fluids

https://se.mathworks.com/products/simhydraulics.html (Hämtad 13 maj 2019) [33] GNU Octave

https://www.gnu.org/software/octave/ (Hämtad 3 april 2019) [34] Scilab Control System

A

LS-reglering av pump med Simscape komponentblock

ls_shunt.ssc component l s _ s h u n t % H y d r a u l i c Shunt . n o d e s A = f o u n d a t i o n . h y d r a u l i c . h y d r a u l i c ; % A: l e f t B = f o u n d a t i o n . h y d r a u l i c . h y d r a u l i c ; % B : r i g h t LS = f o u n d a t i o n . h y d r a u l i c . h y d r a u l i c ; % LS : r i g h t end p a r a m e t e r s

delta_p = { 2 0 , ’ bar ’ } ; % Pump d e l t a p s e t t i n g . end v a r i a b l e s ( A c c e s s = p r o t e c t e d ) q = { 0 , ’ lpm ’ } ; % Flow r a t e p = { 0 , ’ bar ’ } ; % P r e s s u r e d i f f e r e n t i a l r = { 0 , ’ b ar /lpm ’ } ; % " R e s i s t a n c e " d i f f = { 0 , ’ b ar ’ } ; r _ t a r g e t = { 0 , ’ ba r /lpm ’ } ; r _ d i f f = { 0 , ’ b ar /lpm ’ } ; l s = { 0 , ’ ba r ’ } ; end b r a n c h e s q : A. q −> B . q ; end e q u a t i o n s d i f f == ( l s + delta_p ) − p ; l s == LS . p − B . p ; l e t max_r = { 5 0 , ’ b ar /lpm ’ } ; kp = { 1 0 0 , ’ 1/ lpm ’ } ; k i = { 1 0 0 , ’ 1/ s ’ } ; i n r _ t a r g e t == min(max( 0 , d i f f ∗kp ) , max_r ) ; r _ d i f f == r _ t a r g e t − r ; r == i n t e g ( r _ d i f f ∗ k i ) ; end p == A. p − B . p ; p == q ∗ r ; end end

Related documents