Geïntigreerde eindproef Industriële wetenschappen leerjaar graad TSO De jonglerende robot Stijn Cambie Jonathan Debruyne 2011-2012 De jonglerende robot Stijn Cambie en Jonathan Debruyne 1
1 Woord vooraf Wij zijn Stijn Cambie en Jonathan Debruyne, leerlingen uit het 6 e jaar IW. Als eindwerk kozen we voor het project De jonglerende robot waar we mee in aanraking kwamen via meneer Tytgat. Voor dit project werd samengewerkt met de Howest. Daar kregen we een basis van de theorie mee en een robotje, waarna we ook zelf 1 zouden proberen te maken. Het onderwerp is een mix van mechanica en elektriciteit, vakken uit de fysica die ons aanspreken. De praktische kant is doenbaar en zag er OK uit. We willen tot slot nog dhr. Tytgat, dhr. Kinget en dhr. Beirlaen, de begeleiders uit het PIH, onze klasgenoten en onze ouders bedanken bij de steun en hulp tijdens het eindwerk. De jonglerende robot Stijn Cambie en Jonathan Debruyne 2
2 Inhoudsopgave 1 voorwoord 2 inhoudsopgave 3 gebruikte symbolen en afkortingen 4 inleiding 5 lijst met figuren 6 theorie 6.1 mechanica 6.1.1 schuine worp 6.1.2 cirkelvormige beweging 6.1.3 massatraagheidsmoment 6.2 stappenmotor 6.2.1 opbouw 6.2.2 werking 7 berekeningen 7.1 schuine worp 7.2 massatraagheidsmoment 7.3 versnelling 7.4 botsing 7.5 sterkteberekeningen 7.5.1 krachten 8 programma 9 bronvermelding 10 besluit 11 algemene vakken De jonglerende robot Stijn Cambie en Jonathan Debruyne 3
3 gebruikte symbolen en afkortingen ( ) ( ) ( ) ( ) De jonglerende robot Stijn Cambie en Jonathan Debruyne 4
4 Inleiding Een robot doen jongleren, gaat niet zomaar. Er moet worden voor gezorgd dat de bal op de juiste plaats valt. Hiervoor moeten de verschillende parameters zorgvuldig worden bestudeerd en ingesteld. In deze bundel leggen we de parameters uit met de nodige theorie. We leggen tevens onze berekeningen en het programma uit en houden het over(bod)ige kort. Bij de bijlagen zijn er verschillende foto s en tekeningen om duidelijkheid te scheppen bij wat we deden. De jonglerende robot Stijn Cambie en Jonathan Debruyne 5
5 lijst met tabellen en tabellen De jonglerende robot Stijn Cambie en Jonathan Debruyne 6
6 De jonglerende robot 6.1 mechanica 6.1.1 de schuine worp Een schuine worp is de beweging die gemaakt wordt, wanneer een voorwerp schuin de hoogte wordt ingegooid. Het voorwerp zal hierbij een bergparabool beschrijven. De hoek en snelheid die wordt gemaakt, verandert ten gevolge van de zwaartekracht. Hiervoor hebben we de valversnelling nodig. De gravitatiewet van Newton is de formule die bepaald werd om de aantrekkingskracht tussen 2 voorwerpen te bereken in het algemeen: Hierbij is De tweede wet van Newton stelt dat Met De valversnelling is de versnelling ten gevolge van de aantrekkingskracht tussen de aarde en een voorwerp. We kunnen dus berekenen dat Hier is De jonglerende robot Stijn Cambie en Jonathan Debruyne 7
Omdat de aarde geen perfecte bol is, is de afstand tot het massapunt van de aarde veranderlijk, waardoor ze tussen de waarden 9.78 een 9.83 (op de evenaar en de polen respectievelijk) schommelt en bij ons 9.81 is. Omdat de versnelling naar de aarde toe (naar beneden gericht) is, is g negatief: -9.81 is Nu kunnen we starten met het berekenen van de baan van de schuine worp, deze start met een snelheid, die we opsplitsen in de componenten in 2 onderling loodrechte richtingen:. Hierbij is de hoek die de beweging van het voorwerp maakt met het aardoppervlak bij de start. De luchtweerstand is te verwaarlozen, zodat we kunnen stellen dat constant blijft. Dit omdat de aardversnelling enkel loodrecht op het aardoppervlak werkt. Voor geldt er echter dat aangezien de aardversnelling de snelheid steeds beïnvloed. Hierbij kunnen we deze component zien als de verticale worp, die een E.V.R.B (éénparige veranderlijke rechtlijnige beweging) is. De positie van het voorwerp in de twee richtingen, kunnen we berekenen met de volgende formules: Hierbij is de positie, afstand tot de oorsprong op de horizontale as de positie op de y-as de snelheden in respectievelijk de horizontale en verticale richting ( ) De weg die het voorwerp aflegt, is afhankelijk van de snelheid en de hoek waaronder het gegooid wordt. Een eigenschap die op te merken valt, is dat het voorwerp het meest ver komt, als de hoek 45 is. Dit omdat of is de tijd dat het voorwerp in de lucht bewoog, aangezien op dit moment het voorwerp terug op de grond is. In deze tijd is de afstand die het voorwerp afgelegd heeft in onze x-richting. De jonglerende robot Stijn Cambie en Jonathan Debruyne 8
Aangezien supplementaire hoeken een gelijk sinus hebben en de sinus het grootst is bij 90, weten we dat complementaire hoeken een zelfde afstand geven en de hoek van 45 de langste verplaatsing heeft. De volgende illustratie toont dit voor enkele waarden: Betekenis van de assen: x-as: afstand in meter y-as: hoogte in meter fig 6.1 Het hoogste punt dat wordt bereikt, verkrijgen we wanneer de verticale snelheid 0 is, op dat moment gaat het voorwerp van stijgen over naar dalen. In de formule zien we dat dit het geval is, wanneer of. Het invullen van deze tijd, geeft dus de maximale hoogte van. Voorbeeld De robot schiet het projectiel af op een hoek van 2 30, de arm is 10 cm lang. We willen dat het balletje wordt opgevangen, welke snelheid moeten we de arm laten maken wanneer we het balletje wegschieten? Oplossing: is de afgelegd weg wanneer het balletje op dezelfde starthoogte valt. We willen dus dat of en dus. We moeten dus zorgen dat het balletje de arm verlaat met een snelheid van bij 2 30. De jonglerende robot Stijn Cambie en Jonathan Debruyne 9
Tot nu werkten we nog steeds met 2 vergelijkingen in functie van de tijd, onze bergparabool geeft in functie van en die verhouding kunnen we als volgt berekenen: Wanneer we dit invullen in onze formule voor de verticale positie, verkrijgen we Hierbij is s tx de positie, afstand tot de oorsprong op de horizontale as (m) s ty de positie op de y-as (m) v x0, v y0 de snelheden bij de start in respectievelijk de horizontale en verticale richting ( ) de hoek waaronder het projectiel wordt afgeschoten tegenover de x-as ( ) t de tijd dat het projectiel onderweg is (s) g de gravitatieconstante op aarde ( de startsnelheid ( Hiermee kunnen we de mogelijke startsnelheid (v 0 ) in functie van een gekozen hoek bepalen om het voorwerp de baan te laten lopen door de oorsprong en het gevraagde punt, bestaande uit de horizontale - en verticale positie. De jonglerende robot Stijn Cambie en Jonathan Debruyne 10
6.1.2 de cirkelvormige beweging De arm van de stappenmotor moet de snelheid en hoek bepalen : Er geldt dat fig 6.2 Uitleg symbolen: ( ) ( ) ( ) Een radiaal/rad is hierbij, daar de omtrek van een cirkel is bij radialen, zal de boog van de sector met hoek 1 rad r zijn, wat de afgelegde weg is. Na radialen, hebben we meter afgelegd. Met de formules en zien we dat de eerste formule geldt. De jonglerende robot Stijn Cambie en Jonathan Debruyne 11
6.1.3 massatraagheidsmoment Het massatraagheidsmoment geeft de grootte van de inertie bij rotatie. De algemene formule is gegeven door. In de lessen leerden we enkele basisformules voor dit moment: Massieve cilinder: dunwandige cilinder:. Bal: cilinder: Enkele speciale gevallen bewijzen we zelf: Balk: a y x r b fig 6.3 ( ) ( ) Bolschil: e h r ar α fig 6.4 De jonglerende robot Stijn Cambie en Jonathan Debruyne 12
( ) ( ) ( ) Het massapunt van de halve bolschil bepalen: Het zwaartepunt ligt dus in het midden van de hoogtelijn. Stelling van Steiner Hierbij is J het massatraagheidsmoment tov een as door het massacentrum en massatraagheidsmoment tov een parallelle as. het Bewijs: fig. 6.5 =md²+j Kracht door botsing van de bal: Dit omdat de bal een impulsverandering ondergaat tijdens de botsing met de pot. De jonglerende robot Stijn Cambie en Jonathan Debruyne 13
6.2 de stappenmotor De stappenmotor wordt gebruikt als je precieze regeling nodig hebt van een systeem. Enkele belangrijke eigenschappen van deze synchrone motor: - koppel leveren bij stilstand - hoekverdraaiing kan vrij exact gebeuren in stappen - het rendement van een stappenmotor is zeer laag met 10%. 6.2.1 opbouw De stappenmotor bestaat uit een rotor en een stator zonder koolborstels: De stator bestaat uit een paar spoelen (elektromagneten) die samen gestuurd worden om een resulterend magnetisch veld te maken. De rotor volgt dit magnetisch veld. Als de stappen motor meer spoelen gebruikt, wordt de hoek die je de stappenmotor kan veranderen kleiner. Het aantal spoelen die we gebruiken in onze zelfgemaakte robot is het een stator met 5 spoelen. De robot van het PIH gebruikt 2 spoelen. De rotor is gemaakt uit permanente magneten waarbij de noordpolen en de zuidpolen elkaar opvolgen en/of heeft een grillige vorm zodat de reluctantie verschilt volgens de positie (zie fig.1). We sturen met een microcontroller een stuurkaart aan die pulsen ontvangt. Als de microcontroller een puls krijgt, dan verandert het de spanning over de spoelen zodat een nieuw resulterend magnetisch veld ontstaat die de rotor in een andere positie duwt zodat het inhaakt op het nieuwe veld. fig 6.6 De jonglerende robot Stijn Cambie en Jonathan Debruyne 14
6.2.2 werking Er zijn 3 soorten stappenmotoren met hun specifieke werking: Stappenmotor met permanente magneet: de magnetische rotor wordt aangetrokken of afgestoten door het elektrische veld die in de stator wordt opgebouwd Stappenmotor met variabele reluctantie: de magnetische veldlijnen willen een weg volgen met een zo n klein mogelijke magnetische weerstand, waardoor ze op de rotor een kracht uitwerken om deze te doen draaien tot de reluctantie minimaal is. De hybride stappenmotor: combinatie met permanente magneet en variabele reluctantie. Deze soort wordt het meest gebruikt. De werking van een 2fasenstappenmotor fig 6.7 fig 6.8 Bij het eerste deel werken we fullstep: we draaien 90 wanneer we een andere spoel bekrachtigen. Door de vorm en magnetische eigenschappen van de rotor, probeert het elektrische veld mee te draaien met het elektrisch veld dat 90 gedraaid is, waardoor we bovenstaande volgorde bekomen. Onderaan kunnen we 2 spoelen tegelijk bekrachtigen, waardoor de resultante van de 2 velden 45 gedraaid is met het eerdere veld. We werken hier op halfstep. Door meerdere spoelen, meer polenparen en vertanding op de rotor en door microstepping, kunnen we kleinere hoekverdraaiingen bekomen. Microstepping gebeurt met de elektronische schakeling in de microcontroller die de stroomsterkte over iedere spoel een verschillende waarde kan geven, waardoor de magnetische velden een resultante hebben die een exactere verhouding kan hebben tussen 2 posities en dus ook meer posities kan aannemen. De jonglerende robot Stijn Cambie en Jonathan Debruyne 15
Over iedere fase staat een H-brug met 4 transistoren om de stroomrichting te bepalen. De driver bevat deze H-brug en zorgt voor de verbinding tussen de microcontroller en de stappenmotor. 7 Berekeningen 7.1 schuine worp De berekeningen van de schuine worp werden eerst in Excel gedaan zodat bij waardeveranderingen, de berekeningen niet helemaal moesten worden overgedaan. tabel 7.1 v r fig 7.1 We zullen de berekening ervan onze eigen robot hier uitwerken: We hebben dat de afgelegde afstand. Door het symmetrisch werpen, weten we dat We gebruiken nu formule (1) van pagina 10: Hierbij is Omvormen van de formule geeft: De waarden invullen en dus. Uit halen we dat,. De jonglerende robot Stijn Cambie en Jonathan Debruyne 16
Per puls leggen we 0.72 af of 12.57 delen we dit door bekomen we dat we per 901 µs een puls moeten sturen. 7.2 massatraagheidmoment We berekenen hier de massatraagheidsmoment van ieder deel. arm fig 7.2 Berekenen van het massatraagheidsmoment van de balk om de centrale as. Doordat de centrale as op dezelfde plaats is als de as van de motor geld Bij deze berekeningen berekenen we de balk die uit de eerste balk wordt uitgenomen. Berekenen van het massatraagheidsmoment van de balk om de centrale as. Doordat de balk niet om de centrale as draait maar 1 mm van de centrale as draait moeten we er een factor bijtellen met de stelling van Steiner: Het berekenen van het massatraagheidsmoment van de arm: De jonglerende robot Stijn Cambie en Jonathan Debruyne 17
Potjes(bolschillen) Het massatraagheidsmoment berekenen van een halve bol rond het bovenvlak van de bol. Doordat de centrale as niet de as is waarrond we berekend hebben moeten we een deel aftrekken om het voor de centrale as te hebben. Bereken van het massatraagheidsmoment van een potje rond de as van de motor. ( ( ) ) Berekenen van een nieuwe tussenwaarde, we nemen 2 keer J zpot omdat er 2 zijn. Bouten Omdat we zagen dat bij de potjes het gewone massatraagheidsmoment zo klein was hebben we het bij de boutjes verwaarloosd, want de massa is dichter bij het massapunt en de massa is kleiner. We berekenen nu het massatraagheidsmoment van een bout tegenover de as waarrond het draait. We berekenen nu het massatraagheismoment van de volledige arm Bal Totaal De jonglerende robot Stijn Cambie en Jonathan Debruyne 18
7.3 versnelling We versnellen de bal bij het werpen. Doordat we het laten versnellen door de tijd bij iedere puls met een constante verlagen tussen de pulsen, is de versnelling het grootst bij het begin waar het de beginsnelheid in 1 puls moet halen of op het einde waar het verschil in snelheid van het begin en het einde van de puls het grootst is. 7.3.1 start Versnelling met de factor door de microcontroller ingerekend. 7.3.2 einde De hoeksnelheden bij de laatste en voorlaatste puls zijn: Versnelling met de factor door de microcontroller ingerekend. 7.4 botsing Bij het opvangen heeft de bal een bepaalde snelheid waarmee het tegen het potje botst waar het invalt. Daardoor moet het potje een reactiekracht uitoefenen. Hiervoor heeft de rotor stil moeten blijven staan en was er een moment om de as gecreëerd. We hadden gemeten en berekend dat en zodat Zoals in onderstaande simulaties met het programma DataStudio zien we dat de topwaarde veel groter is. Bij de berekeningen van het moment gebruiken we 30N. De wrijving zorgt voor een gedempte trilling, die we door de frequentie van het opmeten niet volledig kunnen opmeten. Uit de fysica weten we dat de snelheid 90 verschoven zou zijn in ideale omstandigheden, waardoor de snelheid nul is op het moment dat de versnelling maximaal is, door de tweede wet van Newton weten we dat dit plaats vindt wanneer de kracht maximaal is. Hierdoor konden we tijd aflezen. De snelheid was al berekend in het deel van de schuine worp (6.1). De jonglerende robot Stijn Cambie en Jonathan Debruyne 19
Bij de tweede simulatie zien we een algemener beeld van de gedempte sinusbeweging, waarbij het balletje van iets hoger werd gesmeten op de meetplaat, zoals we zien op volgende pagina. Simultatie 1 Simulatie 2: fig7.3 Meetopstelling: fig7.4 De jonglerende robot Stijn Cambie en Jonathan Debruyne 20
fig7.5 7.5 sterkteberekeningen 7.5.1 krachten Doordat we zagen dat de versnelling op het einde groter was de dan versnelling in het begin rekenen we verder met de eindversnelling. Moment berekenen bij het opvangen. Nu zien we dat M b groter is dan M e dus rekenen we verder met M b. Bereken van de kracht die op een van de kleine boutjes komt door het moment. Doordat de boutjes ook het stuk omhoog moeten houden moet er ook rekening gehouden worden met de zwaartekracht. De kracht door de zwaartekracht op 1 van de bouten en de kracht om de impuls op te vangen (niet het moment), zijn verdeeld over de boutjes: Bout 1 en. De jonglerende robot Stijn Cambie en Jonathan Debruyne 21
fig 7.6 bout 2 fig 7.7 We zien dat de resulterende kracht bij bout 2 het grootst zal zijn en ontbinden ze allemaal. 7.5.2 spanning = = 5.4. De toegelaten spanning van zou tussen en liggen. 8 Programma 8.1 main De jonglerende robot Stijn Cambie en Jonathan Debruyne 22
fig 8.1 Het eerste dat we plaatsten, is een interrupt. Deze functie uit flowcode werd verbonden met parameter Rb0, zodat het drukken op knop SW0 (switch 0) zorgt dat het programma onmiddelijk stopt. Op deze manier konden slechte, onveilige situaties simpel beëindigd worden in alle gevallen. Omdat het programma niet steeds opnieuw zou moeten worden gestuurd, wordt het eigenlijke programma in een lus (loop) gestoken die nooit stopt. In die lus wordt drukknop SW1 ingelezen via een input en geassocieerd met een variabele die in de decision (beslissing) wordt ingelezen. Indien er wel degelijk op de knop werd gedrukt, wordt de variabele op 0 gezet en zal het echte werptraject worden uitgevoerd tot we op drukknop 7 drukken om het werpen stop te zetten, maar de laatste cyclus laat eindigen (vergelijk met interrupt die direct stopt ). Wanneer bij de decision B1 niet ingedrukt stond, is er mogelijkheid tot joggen, dat is de robotarm waterpas zetten om het programma correct te verlopen. Hier werden 2 mogelijkheden voor voorzien die zorgen dat grote afstanden sneller kunnen verlopen, terwijl om het geheel precies te zetten, we per puls kunnen regelen. 8.2 macro s De jonglerende robot Stijn Cambie en Jonathan Debruyne 23
Om het programma overzichtelijk te houden, werden de functies zoals het joggen en het werpen in aparte macro s gezet. Deze deelprogramma s kunnen we makkelijk meerdere keren gebruiken zonder veel werk. Pulsentrein en pulsentreinms: fig 8.2 Deze macro s besturen de ingangen van de stuurkaart om pulsen te sturen, waardoor het magnetisch veld in de stappenmotor per puls een stap verplaatst is. Joggen en joggensnel: fig 8.3 Bij het positioneren van de arm, gebruiken we 4 drukknoppen, per snelheid hebben we 2 richtingen: in wijzerzin en in tegenwijzerzin. Die richting wordt gestuurd met uitgang A0. Het is zeer belangrijk om in de lus de drukknoppen in te lezen, zodat bij het los laten van de knop, het plaatsen stopt. De jonglerende robot Stijn Cambie en Jonathan Debruyne 24
Interruptuitgaan: fig 8.4 Hier wordt de interrupt stop gezet door het drukken op SW4, omdat deze variabele nergens anders wordt gebruikt, moet de variabele ergens terug op 0 worden gezet. Dit mocht zowel voor als na de lus gebeuren. Indien het niet gebeurt, zal de lus worden verlaten als B4=1 en de volgende noodstop wordt niet ingelezen. Pulsen: fig8.5 In deze macro worden de pulsen steeds rapper gegeven door de tijd te verkleinen. Op deze manier moet de stappenmotor de hoge snelheid niet bij de start kunnen geven, alsook de extreem hoge versnelling bij de start. De jonglerende robot Stijn Cambie en Jonathan Debruyne 25
Werpen en werpenrechts: De jonglerende robot Stijn Cambie en Jonathan Debruyne 26
Dit zijn de 2 grootste macro s die de stuurkaart bij het werpen zelf regelt. Om de snelheid te kunnen opbouwen, moet er even naar beneden worden gedraaid met de arm. Dit gebeurt langzaam genoeg om de bal nog niet er uit te laten vallen. Er wordt even gewacht zodat de bal steeds in rust op de zelfde plaats blijft (met de bedoeling dat iedere cyclus identiek kan worden afgelegd). Daarna wordt de variabele T1 verandert, zodat we met de macro pulsen de goede snelheid kunnen vinden. Door kleine fouten in symmetrie (waterpas, afstand ), zien we dat die waarde niet bij iedere richting identiek is. Daarna wordt er een pulsentrein gestuurd wanneer de richting al omgedraaid is in een korte tijd zodat de bal wordt opgevangen. De arm is aan de andere kant klaar gezet om op te vangen, waarna we langzaam zakken om het traject uit te voeren in de andere richting. Iedere stap is analoog in de andere cyclus. 9 Bronvermelding fig 1: http://nl.wikipedia.org/wiki/stappenmotor fig 2: http://nl.wikibooks.org/wiki/klassieke_mechanica/kinematica fig 3: http://commons.wikimedia.org/wiki/file:formule_van_steiner.png fig 4: http://www.wetenschapsforum.nl/index.php%3fshowtopic%3d7623&docid=qtwh6r8k9oni EM&imgurl=http://img127.exs.cx/img127/4093/img12n47iw.gif&w=216&h=135&ei=v1RwT fig 5: http://educypedia.karadimov.info/library/thesis.pdf De jonglerende robot Stijn Cambie en Jonathan Debruyne 27
10 besluit 11 algemene vakken Nederlands: brief om inlichtingen Datapross B.V. Vloeddijk 5 7397 NR Nijbroek Informatie GIP (eindwerk) Geachte heer, Om onze middelbare studies Industriële wetenschappen te kunnen beëindigen, zijn we op zoek naar de normale resultaten bij gebruik van de regeldoos van een Ardenna 80 WA - zoutstrooier. In ons laatste jaar is het maken van een GIP (geïntegreerde eindproef) vereist. Een voorstel dat we deden, was het herstellen van de schakelkast van een zoutstrooier (Ardenna 80 WA zoals eerder vermeld) waarvan de schakeling na vele jaren een defect vertoont in verband met de strooibreedteregeling. We hebben al wat gezocht, maar kwamen tot de conclusie dat het beter zou zijn als we de resultaten bij goede werking zouden kunnen verkrijgen. Aangezien de programma s die we op de school gebruiken, ontoereikend zijn om iedere component exact te vinden, vragen we aan jullie of het mogelijk is het elektronische schema van de schakelkast met simulaties te delen met ons? Dit zou er voor zorgen dat we bij het testen van de werking zeker kunnen zijn van wat we moeten bekomen om zo de component die defect is, te kunnen vinden. We hopen dat jullie ons hiermee kunnen helpen en bedanken jullie alvast Met vriendelijke groet, Stijn Cambie Frans : de GIP en onszelf voorstellen De jonglerende robot Stijn Cambie en Jonathan Debruyne 28
De jonglerende robot Stijn Cambie en Jonathan Debruyne 29