29
EMR’18 Hanoi (Vietnam) June 2018 « From EMR Pictograms to µC programming using Java » Prof. Ruben Gonzalez-Rubio and Prof. João P. Trovão University of Sherbrooke Joint Summer School EMR’18 “Energetic Macroscopic Representation” 14e COMMISSION DE COOPÉRATION QUÉBEC-VIETNAM

« From EMR Pictograms to µC programming using Java · 2018. 7. 15. · EMR’18, Hanoi, June 2018 2 «From EMR Prictograms to µC programming using Java» - Outline - 1. Motivation

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • EMR’18Hanoi (Vietnam)June 2018

    « From EMR Pictograms to µC programming using Java»

    Prof. Ruben Gonzalez-Rubio and Prof. João P. TrovãoUniversity of Sherbrooke

    Joint Summer School EMR’18“Energetic Macroscopic Representation”

    14e COMMISSION DE COOPÉRATION QUÉBEC-VIETNAM

  • EMR’18, Hanoi, June 20182

    « From EMR Prictograms to µC programming using Java»

    - Outline -

    1. Motivation2. Developing a new path3. Agile 1014. Planed releases5. Conclusions

  • EMR’18Hanoi (Vietnam)June 2018

    « Motivation»

  • EMR’18, Hanoi, June 20184

    « From EMR Prictograms to µC programming using Java»

    - The EMR -

    The EMR is a very powerful tool, allowing to go from a model to a final system.• Modeling the system.• Simulate the system (using MatLab and SimuLink).• Simulate or emulate the system with hardware in the

    loop.• Some parts will be done in software by a µC or

    various µC• Final system will use only µC(s)

    The EMR is a very structured approach. That helps a design to succeed. That is priceless in engineering.

  • EMR’18, Hanoi, June 20185

    « From EMR Prictograms to µC programming using Java»

    - The EMR -

    ElectronicControl Unit

    sensors

    From EMR

    TO

  • EMR’18, Hanoi, June 20186

    « From EMR Prictograms to µC programming using Java»

    - The EMR -

    Our experience with the way we use MatLab and SimuLink, and the C-code produced by SimuLink to small micro controllers face some difficulties.

    We had problems when building The 1st prototype of a system.• Modeling and simulate a system was fine (with

    EMR).• Designing the electrical part was also fine.• Building the electrical part was painful job.• Integration between hardware and software was

    the biggest problem.• Configuration of µC, programming the µC?

  • EMR’18Hanoi (Vietnam)June 2018

    « Agile 101»

  • EMR’18, Hanoi, June 20188

    « From EMR Prictograms to µC programming using Java»

    - Agile 101 crash course -

    From the Agile manifestoOrganizational:• Customer collaboration.• Working software• Produce minimal

    functionality• Produce only the

    product requested• Produce only code

    and test• Responding to needed

    change

  • EMR’18, Hanoi, June 20189

    « From EMR Prictograms to µC programming using Java»

    - Agile 101 crash course -

    From the Agile manifesto:Technical implication.• Develop iteratively:

    • Produce frequent working iteration. A live example.

    • Freeze requirement during iterations.

    • Treat tests as a key resource.

  • EMR’18, Hanoi, June 201810

    « From EMR Prictograms to µC programming using Java»

    - Agile 101 crash course -

  • EMR’18Hanoi (Vietnam)June 2018

    « System to build and releases»

  • EMR’18, Hanoi, June 201812

    « From EMR Prictograms to µC programming using Java»

    - System to develop -

    Proposition 1: A generic EMR pictogram EditorWhy is interesting for EMR community?

    Already done and used with limitations for uC programing…

  • EMR’18, Hanoi, June 201813

    « From EMR Prictograms to µC programming using Java»

    - System to develop -

    Proposition 2: A discrete Java simulator (using #1)Why is interesting for EMR community?

    ? Not just a simulator

  • EMR’18, Hanoi, June 201814

    « From EMR Prictograms to µC programming using Java»

    - System to develop -

    Proposition: A Java generatorWhy is interesting for EMR community?

  • EMR’18, Hanoi, June 201815

    « From EMR Prictograms to µC programming using Java»

    - System to develop -

    Answer the industrial partners demand…

  • EMR’18Hanoi (Vietnam)June 2018

    « Example: First step for an editor »

  • EMR’18, Hanoi, June 201817

    « From EMR Prictograms to µC programming using Java»

    - Example -

  • EMR’18, Hanoi, June 201818

    « From EMR Prictograms to µC programming using Java»

    - Example -

  • EMR’18Hanoi (Vietnam)June 2018

    « Conclusions»

  • EMR’18, Hanoi, June 201820

    « From EMR Prictograms to µC programming using Java»

    - Conclusion -

    We presented a plan for developing tools with the goal to satisfy industrial projects.

    The proposal is based in a “new” way to develop software: based in iterations and delivering working software that can be useful.

    We feel that the ERM team can help us improve the application.

    We are ready to collaborate.

    ????????

  • EMR’18Hanoi (Vietnam)June 2018

    « BIOGRAPHIES AND REFERENCES »

  • EMR’18, Hanoi, June 201822

    « From EMR Prictograms to µC programming using Java»

    - Authors -

    Prof. Ruben GONZALEZ-RUBIOUniversité de Sherbrooke, eXit Lab., Qc, CanadaDèsS in Mathematics at Université Pierre and Marie Curie (1987). Research topics: Software engineering, Optimization, Artificial Intelligence,

    Prof. João P. TROVÃOUniversité de Sherbrooke, e-TESC Lab., Qc, CanadaPhD in Electrical Engineering at University of Coimbra (2012)Research topics: Electric Vehicles, Multiple Energy Storages, Energy Management

  • EMR’18, Hanoi, June 201823

    « From EMR Prictograms to µC programming using Java»

    - References -

    A. Bouscayrol et al., "Teaching drive control using Energetic Macroscopic Representation — Summerschools," Proceedings of the 2011 14th European Conference on Power Electronics and Applications,Birmingham, 2011, pp. 1-6.

    B. B. Meyer., “Agile: The Good, the Hype and the Ugly”, Springer, 2014.

    C. F. A. LeBel, P. Messier, L. Pelletier and J. P. Trovao, "Benefits of Regenerative Braking for an ElectricSuperbike Using Energetic Macroscopic Representation," 2017 IEEE Vehicle Power and PropulsionConference (VPPC), Belfort, 2017, pp. 1-6.

    D. R. German et al., "Coupled electric and thermal batteries models using energetic macroscopicrepresentation (EMR) for range estimation in electric vehicles," 2017 19th European Conference onPower Electronics andApplications (EPE'17 ECCE Europe), Warsaw, 2017, pp. P.1-P.8.

    E. B. H. Nguyen, J. P. Trovao, R. German and A. Bouscayrol, "An Optimal Control-Based Strategy forEnergy Management of Electric Vehicles Using Battery/Supercapacitor," 2017 IEEE Vehicle Power andPropulsion Conference (VPPC), Belfort, 2017, pp. 1-6.

    F. R. Gonzalez-Rubio, A. Khoumsi, M. Dubois and J. P. Trovao, "Problem- and Project-Based Learning inEngineering: A Focus on Electrical Vehicles," 2016 IEEE Vehicle Power and Propulsion Conference(VPPC), Hangzhou, 2016, pp. 1-6.

  • EMR’18Hanoi (Vietnam)June 2018

    « Appendix: new EMR pictograms »

  • EMR’18, Hanoi, June 201825

    « From EMR Prictograms to µC programming using Java»

    - Colors -

    violetpalegreen gold

    Powersystem

    Powersource

    Systemmodel

    Systemcontrol

    Controlstrategy

    blueskyblue

    Web X11 colour, standard colours on web pageshttp://en.wikipedia.org/wiki/Web_colors

    • light green background RGB = (152,251,152) « pale green »• dark green border RGB = (0,128,0)« greeen »

    • orange background RGB = (255,215,0)« gold » • red border RGB = (255,0,0)« red »

    • purple background RGB = (238,130,238)« violet » • dark blue border RGB = (0,0,255)« blue »

    • light blue background RGB = (135,206,235)« sky blue » • dark blue border RGB = (0,0,255)« blue »

    • dark blue background RGB = (0,0,255)« blue » • dark blue border RGB = (0,0,255)« blue »

  • EMR’18, Hanoi, June 201826

    « From EMR Prictograms to µC programming using Java»

    element name

    Name

    No equation number in slides

    x1

    y1

    - EMR pictograms -

    element name element name

    element name element name

    power vectors(size b, full arrows)

    signal vectors(size b/2, empty arrows)

    (radius= a)

    borders of powerelements = b pt

    (a/2 x a) (a x a)(2a x a)

    a

    2a

  • EMR’18, Hanoi, June 201827

    « From EMR Prictograms to µC programming using Java»

    stratégie

    - Control pictograms -

    (support squarea x a)(same pictograms – same size -

    with or without oblique bar)

    borders of controlelements = b/2 pt

    signal vectors(size b/2, empty arrows)

  • EMR’18, Hanoi, June 201828

    « From EMR Prictograms to µC programming using Java»

    Source

    - estimation pictograms -

    borders of estimationelements = b/2 pt

    signal vectors(size b/2, empty arrows)

  • EMR’18, Hanoi, June 201829

    « From EMR Prictograms to µC programming using Java»

    - Example -

    ich1

    ubat

    ifield

    efield

    battery choppers

    DC machine

    ubatBat.

    itotEnv.

    uch1

    iarm

    iarm

    earm Tem

    W gear

    Tgear

    Wwh

    Fwh

    Fres

    vev

    vev

    gearbox

    mch1

    ifield

    uch2

    ich2

    ubat

    parallel connexion wheel

    chassis

    environment

    mch2

    ifield-ref

    uch1-ref iarm-ref

    Tem-ref Tgear-ref Fwh-ref vev-ref

    uch2-ref

    strategy driver requestSoCest

    Wwh-est vev-est