Indholdsfortegnelse Øvelse 1: Hardware in the loop med Arduino og PSpice... 2 Modul 1: Hardware in the loop med Arduino... 3 Steps... 4 Opsætning af Visual Studio... 6 Upload kode til Arduino board... 8 Sæt PSpice projekt op til simulering... 10 Start PSpice simulering... 16 Ekstra: PSpice Search... 18 Ekstra: Texas Instruments WEBENCH... 20 Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 1 af 22
Øvelse 1: Hardware in the loop med Arduino og PSpice Virtual prototyping er en metode der kan anvendes under produktudvikling. Denne proces tillader en designer at validere et design før en eventuel fysisk prototype laves. OrCAD/Allegro 17.2 har tilføjet muligheden for at simulere systemdesigns ved hjælp af det nye Device Modelling Interface. Denne øvelse vil gennemgå hvordan et Arduino Uno board kan tilsluttes PSpice og vise sensordata tilsluttet Arduinoboardet i Probe Window. Indhold i denne øvelse: - Anvendelse af Device Modelling Interface - Opsætning af Visual Studio 2013 Community - Hardware in the loop med Arduino Software: - OrCAD/Allegro Release 17.2-2016 - Visual Studio 2013 Community - Arduino IDE Filer - C:\workshop2016\PSpice\LAB\HIL Figur 1: Oversigt over hvordan hardware er sat op til øvelsen Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 2 af 22
Modul 1: Hardware in the loop med Arduino Dette modul viser hvordan Hardware in the loop kan anvendes sammen med et Arduino board sat op med serielkommunikation til PSpice. Der anvendes i dette modul et Arduino Uno board, dette er for at holde opgaven simpel og da det er et velkendt board. Der gennemgås i modulet hvordan DMI Template Code Generator anvendes til Hardware in the loop. Figur 2: Oversigt over flowet i PSpice DMI Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 3 af 22
Steps Der startes i PSpice Model Editor. Heri findes DMI Template Code Generator. Denne nye funktion i Release 17.2-2016 kan hjælpe designeren med at få genereret en skalkode. Der skal derfor kun fokuseres på selve implementeringen af det givne produkts funktionalitet. 1. Start Model Editor fra startmenuen a. Start Cadence Release 17.2-2016 Model Editor b. Vælg PSpice Designer Plus c. Vælg Capture d. Vælg Model DMI Template Code Generator Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 4 af 22
Figur 3: Sæt Code Generator op som vist i screenshot a. Under Terminal Entry indtastes som vist nedenfor (dobbeltklik for at editere værdier) Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 5 af 22
b. Definer disse to parametre under Device Parameters: Hands-on med Hardware in the loop c. Angiv DLL Location til C:\workshop2016\PSpice\LAB\HIL\LAB\DMI_Arduino d. Klik OK Modelkoden genereres og der kommer en logfil frem. Opsætning af Visual Studio Nu skal Visual Studio anvendes til at kompilere.dll filen til PSpice. 2. Gå til mappen der blev oprettet i Model Editor, i dette tilfælde: C:\workshop2016\PSpice\LAB\HIL\LAB\DMI_Arduino a. Herunder er nu oprettet to mapper, code og lib. b. Gå til C:\workshop2016\PSpice\LAB\HIL\LAB\USB_Serial_Protocol i. Kopier de to filer og indsæt dem i:.\dmi_arduino\arduinohildemo1\code c. Åbn herefter ArduinoHILDemo1.vcxproj herfra: C:\workshop2016\PSpice\LAB\HIL\HIL\LAB\DMI_Arduino\ArduinoHILDemo1\code Figur 4: Solution Explorer vinduet i Visual Studio Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 6 af 22
d. Højreklik på ArduinoHILDemo1 i Solution Explorer vælg Add Existing Item og inkluder Cserial.cpp og Cserial.h e. Sammenlign evt. indholdet i disse nedenstående filer med de samme i LAB_COMPLETE folderen ArduinoHILDemo1_user.cpp psparduinohildemo1.cpp psparduinohildemo1.h Efter gennemgang af de ovenstående filer kan de nu kopieres fra C:\workshop2016\PSpice\LAB\HIL\LAB_COMPLETE\DMI_Arduino\ArduinoHILDemo1\cod e Indsæt og overskriv de eksisterende filer i.\lab\dmi_arduino\arduinohildemo1\code 3. Åbn ArduinoHILDemo1.vcxproj projektet fra:.\lab\dmi_arduino\arduinohildemo1\code i Visual Studio igen og vælg Release og x64 i toppen af vinduet: 4. 5. Klik på Build Build Solution for at generere dll filen til Hardware in the loop projektet 6. Figur 5: Build Solution for Hardware in the loop projektet 7. Tjek at Output angives til Build: 1 succeeded. Bemærk at en.dll fil er blevet oprettet. Det er denne fil PSpice skal anvende senere i modulet. Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 7 af 22
Figur 6: Verificer at build gennemføres succesfuldt Upload kode til Arduino board 8. Åbn Example.ino i Arduino IDE. Filen findes her: C:\workshop2016\PSpice\LAB\HIL\LAB\Arduino_Code\Example 9. Forbind Arduino UNO board til PC en og verificer at det (i dette tilfælde) er forbundet til COM4. Figur 7: Upload kode til Arduinoboardet på COM4 NB: Koden og PSpice modellen i denne øvelse er opbygget således at der kun læses på COM4. Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 8 af 22
10. Upload projektet til Arduinoboardet a. Hvis projektet blev uploadet korrekt, så vil Done uploading blive skrevet nederst i IDE Figur 8: Verificer at koden blev uploadet ( Done uploading ) Nu er Arduinoboardet klar til at sende data til PSpice. Figur 9: Opsætning af Arduinoboard med sensorer Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 9 af 22
Sæt PSpice projekt op til simulering Åben OrCAD Capture - vælg en PSpice Designer Plus eller en Allegro PSpice Simulator licens 11. Åben projektet Arduinohil.opj fra C:\workshop2016\PSpice\LAB\HIL\LAB\Circuit\ArduinoHiL.opj a. Åbn Schematic1 Page1 fra Project Manager. Bemærk at alt er placeret, undtagen Arduino komponenten. 12. Åbn Model Editor a. Klik på File Open og indlæs det bibliotek der blev genereret da DMI Template Code Generator blev kørt tidligere. Filen ligger i: C:\workshop2016\PSpice\LAB\HIL\LAB\DMI_Arduino\ArduinoHILDemo1\lib b. Sammenlign indholdet af modellen i forhold til Change_Me dokumentet: C:\workshop2016\PSpice\LAB\HIL\LAB\DMI_Arduino\Change_Me.txt c. Kopier indholdet fra Change_Me og overskriv det eksisterende indhold i ArduinoHILDemo1.lib d. File Save e. File Export to Part Library Figur 10: Eksporter grafiksymbolet for Arduinoboardet 13. Nu er symbolet for Arduino komponenten oprettet. Denne vil kunne anvendes i Capture. NB: Der er lavet en tilpasset udgave af symbolet for Arduinoboardet hvor pins er sat mere hensigtsmæssigt. Det tilpassede symbol ligger her: C:\workshop2016\PSpice\LAB\HIL\LAB\Circuit\Library\Capture 14. Åben OrCAD Capture og ArduinoHIL projektet 15. Vælg Place Part 16. Klik på Add Library a. Vælg Arduino.olb fra.\circuit\library\capture mappen 17. Dobbeltklik på komponentnavnet Arduinoboard og placer det på schematic: Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 10 af 22
Figur 11: Place Part dialogboksen i Capture. 18. Placer komponenten som vist (tryk evt. på h for at flippe horisontalt): Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 11 af 22
19. Der skal nu tilknyttes en PSpice model til symbolet. a. Højreklik på symbolet og vælg Associate PSpice Model: Hands-on med Hardware in the loop b. Nu åbnes Model Import boksen, peg på det oprettede PSpice bibliotek: c. Klik på Next Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 12 af 22
d. Sæt hver Model terminal til det tilsvarende Symbol Pin e. Klik på Finish og vælg Update All og OK. 20. Nu skal simuleringsprofilen oprettes: Figur 12: Opret simuleringsprofil a. Kald profilen Trans og klik Create Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 13 af 22
Figur 13: Sæt Run time til 10s og Max step size til 1m b. Vælg Configuration Files, klik på Library Browse og vælg arduinohildemo.lib samt matlab.lib. Tryk på Add to Design for at tilføje dem: C:\workshop2016\PSpice\LAB\HIL\LAB\Circuit\Library\Capture\matlab.lib C:\workshop2016\pspice\lab\hil\lab\dmi_arduino\arduinohildemo1\lib\arduinohildemo1.lib Figur 14: Tilføj de to.lib filer for Arduinoboard samt MATLAB filter Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 14 af 22
c. Klik på Probe Window og sæt det op som vist: Hands-on med Hardware in the loop Figur 15: Sæt Display Probe Window til during simulation d. Klik OK. e. Tilføj en Voltage marker til schematic: f. Placer markøren her: Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 15 af 22
21. Til sidst skal den kompilerede DLL fil tilføjes til simuleringsprofilen. a. Kopier pspmatlabdemomodels.dll herfra: C:\workshop2016\PSpice\LAB\HIL\LAB\Circuit\Library\DLL\ Indsæt den her: C:\workshop2016\PSpice\LAB\HIL\LAB\Circuit\ArduinoHiL- PSpiceFiles\SCHEMATIC1\Trans b. Kopier herefter ArduinoHILDemo1.dll herfra: C:\workshop2016\PSpice\LAB\HIL\LAB\DMI_Arduino\ArduinoHILDemo1\code\x64\Releas e\ Indsæt den i:.\circuit\arduinohil-pspicefiles\schematic1\trans Start PSpice simulering 22. Nu er opsætningen klar til at simulere. Tryk på Run Simulation ikonet. Husk at Arduinoboardet skal være tilsluttet og koden skal være uploadet til boardet. a. Når Probe Window er åbnet, så tryk på Tools Options Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 16 af 22
Figur 16: Sæt hastigheden op på hvor ofte Probe Window opdateres Figur 17: Eksempel på et resultat med en probe sat ved Light_Detector nettet - Forsøg at flytte proben rundt på schematic mens simuleringen kører o Sæt den fx på MOVE nettet og tilt herefter med boardet hvad viser simuleringen efter at boardet er tiltet? o Sæt proben ved Light_Detector nettet hvad viser simuleringen hvis lyset blokeres mellem LED og detektor? o Sæt proben ved Temp nettet og hold herefter fingrene på temperatursensoren bemærk om temperaturstigningen angives i Probe Window Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 17 af 22
Ekstra: PSpice Search Der er tilføjet en funktion til nemt at finde komponenter med PSpice modeller. Åbn Capture med en PSpice Designer licens. 1. Vælg File Open Demo Design 2. Tryk på PSpice kolonnen for at sortere efter demodesigns som er simulerbare 3. Dobbeltklik på Forward converter design and simulation 4. Der åbnes nu en kopi af det valgte design 5. Prøv at køre en simulering før der foretages nogen ændringer Vi vil herefter modificere projektet ved at bruge komponenter fundet fra Place PSpice Component Search: Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 18 af 22
1. Søg på MUR810 i det åbnede PSpice Part search vindue 2. Dobbeltklik på MUR810 og erstat den med de 2 MUR430 placeret på output nettet 3. Åbn nu Place PSpice Component Modeling Application Herefter åbnes modelling app for Capacitor 4. Angiv nogle værdier og udskift herefter denne med C5 i projektet. a. Kan editere placeret modelapp ved højreklik More Edit PSpice model 5. Kør herefter simuleringen igen. Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 19 af 22
Ekstra: Texas Instruments WEBENCH På PSpice.com er der lanceret TI WEBENCH til hjælpe designeren med hurtigt at finde de nyeste komponenter, reference designs samt simuleringsmodeller. Webench Designer bygger grundlæggende på TI s Power supply designer. Det giver en række anbefalede designs afhængigt af de indtastede specifikationer og det er muligt at få reference design, schematic og simuleringsmodel eksporteret. Gå ind på http://www.pspice.com/models/ti 1. Scroll ned til PSpice Webench SpiceRack Device Model Search Figur 18: Her er det muligt at søge, filtrere og hente simuleringsmodeller til PSpice 2. Tryk på tragten til højre for Part Description 3. Skriv 12-bit 4. Sæt flueben til venstre for ADC3421 5. Tryk på den grønne knap Download Selected 6. Udpak de udhentede filer og åbn ADC3444.OPJ Prøv at køre simuleringen for det åbnede projekt. Herefter fokuseres på Webench Designer værktøjet på samme side: Figur 19: Angiv ønsket specifikation for et design og klik på Start Design Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 20 af 22
1. Prøv at angive en række parametre, som vist ovenfor 2. Tryk på Start Design 3. Når værktøjet er indlæst kommer følgende valgmulighed frem: Hands-on med Hardware in the loop 4. a. Der kan sorteres i valgmulighederne, afhængigt af hvilken løsning vælges. i. I dette tilfælde vælges Controller 5. Prøv at justere parametrene i Visualizer: a. Bemærk at tabellen med anbefalede designs opdateres hver gang der justeres på en parameter 6. Vælg et design i tabellen, fx LM3485 7. Der vises nu en række data for specifikationerne på det valgte design 8. Tryk på Schematic i midten Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 21 af 22
9. Figur 20: Eksporter schematic ved at trykke på CAD knappen 10. Vælg OrCAD Capture CIS og Include Footprint LIB tryk på Export Figur 21: Export design som vist Udpak den hentede ZIP fil og åben herefter OrCAD Capture 11. Vælg File Import EDIF a. Ved Open - Browse vælg den udpakkede mappe: b..\webench_schematic_exchange_design_4843242_2_orcad\orcad i. Vælg.edf filen og tryk Open c. Ved Configuration File - Browse til.\orcad mappen og vælg EDI@CAP d. e. Klik OK og OK igen når der spørges til oprettelse af projekt 12. Nu vil det hentede design været åbent i Capture Nordcad Systems A/S Workshop 2016 - OrCAD - Allegro - Sigrity Side 22 af 22