Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Main koden bruker vi for å kjøre den fysiske modellen. Den bruker fleire ferdige laga funksjonblokkar ifrå ulike bibliotek, samt nokre eigen laga funskjonsblokker. Vi bruker biblioteket WagoAppStepper for å kjøre stepper-motorane, stepperane krevde fleire ulike funskjonsblokker ifrå dette biblioteket som førte til at eg lagde ein funksjonsblokk som inkluderte alle desse. Servo-motorane brukar biblioteket SM3_Basic der vi har ein funskjon for å slå dei på og ein for å styre posisjonen til servoane.  Vi måtte også bruke biblioteka WagoSysPlainMem og WagoAppCloud for å kunne subscribe på MQTT-brokeren som innhelder informasjon om posisjonen til dei dårige rogna. 


                                                             Enkel HMI For test kjøring av servo- og stepper-motorar:

Image Added

Ferdig laga bibliotek med funksjons blokker:

  • WagoAppStepper
    • FbPower
    • FbReadActualPosition
    • FbMoveAbsolute
    • FbStop
    • FbReset
  • WagoAppCloud
    • FbSubscribeMQTT_2
  • WagoSysPlainMem
    • MemCopy
  • WagoTypesModule
    • WagoTypesModule_75x_67x.I_Module_75x_67x
  • SM3_Basic
    • MC_Power
    • MC_MoveAbsolute

Sjølv laga funksjons blokker:

  • FbEndBreaks
  • FbServoMotor
  • FbStepperMotor


FbEndBreaks brukse for å sjekke enedbrytera på servomotor og setter execute command til true visst ikkkje enedbryter aktiv og sjekker at den nye posisjonen ikkje er større eller mindre en faktisk verdi slik at dei ikkje kan gå ned når endebryter nede er aktiv og motsatt.


FbServoMotor er ein måten vi kjører begge servomotorane samtidig og sjekker at dei ikkje går i fault og position Reached.


FbStepperMotor er ein kombinasjon av fleire ferdige lagde funksjons blokker ifrå WagoAppStepper.