De juiste manier om een ​​robottransportband te simuleren

Een van de meest uitdagende taken bij offline programmeren is het simuleren van een robottransportband. Hier zijn 10 praktische tips om het gemakkelijker te maken.


Transportbanden kunnen moeilijk te simuleren zijn. Zodra je bewegende objecten aan je robotprogramma toevoegt, wordt het lastig.

Gelukkig zijn er bepaalde stappen die u kunt nemen om het gemakkelijker te maken om een ​​transportband te simuleren met offline programmering.

3 goede voorbeelden van gesimuleerde transportbanden

De beste manier om goede programmeerpraktijken te leren, is door naar goed ontworpen voorbeelden te kijken.

De verschillende manieren om te programmeren in RoboDK

Er zijn drie manieren waarop u aspecten van een RoboDK-simulatie kunt programmeren. Elk van deze wordt gedemonstreerd in de transportbanddemo’s. Zij zijn:

  1. Als mechanisme/robot: Robots worden geprogrammeerd als mechanismen in RoboDK en transportbanden kunnen worden geprogrammeerd als lineaire mechanismen.
  2. Als grafisch programma: U kunt robotprogramma’s maken met grafische programmering met behulp van de instructie-iconen zoals Lineaire beweging, Pauze, I/O instellenenz.
  3. Als een python-script: Bijna alles kan in RoboDK worden geprogrammeerd als een eenvoudig Python-script, inclusief robotprogramma’s en -mechanismen. Sensoren worden altijd gesimuleerd als Python-scripts.

Voorbeeld 1: transportband met 2 robots

Onze meest populaire demo toont twee robots die een transportband met grijpers laden en lossen. De video toont een volledige tutorial om deze demo zelf te maken.

  • Type transportband: Python-script
  • Robotprogramma: Grafisch programmeren

Voorbeeld 2: Pick and Place met 2D-camera

Deze demo gebruikt dezelfde opstelling als de onderstaande lasersensor. Het gebruikt echter een gesimuleerde 2D-camera om de positie en oriëntatie van de dozen te detecteren.

  • Type transportband: Lineair mechanisme
  • Robotprogramma: Python-script

Voorbeeld 3: Pick and Place met lasersensor

Deze demo laat zien hoe dozen op een lopende band worden geladen en gelost. Het gebruikt een lasersensor om te detecteren wanneer dozen op de transportband in een positie zijn om te worden opgepakt. Omdat het de rotatie van objecten niet kan detecteren, moeten ze elke keer op dezelfde manier worden uitgelijnd.

  • Type transportband: Lineair mechanisme
  • Robotprogramma: Python-script

10 best practices voor het simuleren van robottransportbanden

Er zijn veel lessen die u kunt leren door alleen maar naar de bovenstaande demo’s te kijken.

Hier zijn 10 best practices die u in actie kunt zien in de demo’s:

1. Gebruik de demo’s als uitgangspunt

Waarom het wiel opnieuw uitvinden als dat niet hoeft? We hebben de demo’s geleverd om het u gemakkelijker te maken uw eigen robot te programmeren. Gebruik ze als uitgangspunt en pas ze aan uw eigen behoeften aan. Hierdoor kun je veel sneller aan de slag.

2. Behandel elk gebied en elke robot afzonderlijk

Een veelgemaakte fout is om te proberen elk deel van de simulatie te besturen vanuit hetzelfde grafische programma of pythonscript. Dit wordt al snel onhandelbaar en is een onfeilbare weg naar een verwarrend programma.

In de demo’s hebben we elke simulatie opgesplitst in drie gebieden:

  1. Het ophaalgebied
  2. De transportband
  3. Het afzetgebied.

Elk van deze gebieden wordt afzonderlijk behandeld en elke robot wordt ook afzonderlijk behandeld.

3. Maak referentiekaders voor elk gebied

Als je naar de eerste demo kijkt (die met de tafel), zul je zien dat we de Referentiekader instellen veel bevelen. U kunt dit zien door met de rechtermuisknop op de Voertransporteur programmeren en selecteren Toon instructies.

Elke keer dat de robot een handeling uitvoert, veranderen we het referentiekader. Dit is een goede programmeermethode, maar nieuwe gebruikers vergeten het vaak. Het hebben van een uniek referentieframe voor elk gebied maakt het gemakkelijk om de transportband en de robots indien nodig te verplaatsen.

4. Stel thuisposities in voor elk gebied

Op dezelfde manier kun je in dezelfde demo zien dat elke robot voor elk gebied een thuispositie krijgt toegewezen. Hierdoor wordt de robot dichtbij het gebied gebracht, maar op een veilige afstand, zodat botsingen worden voorkomen. Elke keer dat een robot een object uit een gebied oppakt, moet hij eerst snel naar deze uitgangspositie gaan en vervolgens gecontroleerd naar het object toe bewegen.

5. Stel de maximale ophaalafstand in

RoboDK simuleert eindeffectoren met behulp van een vrij eenvoudige methode. Wanneer een Voeg actie toe instructie wordt genoemd, wordt elk grijpbaar object in de buurt van de robotgrijper opgepakt. U kunt de maximale afstand hiervoor instellen door naar de Hulpmiddelen menu > Opties en het instellen van de Maximale afstand om een ​​object aan een robotgereedschap te bevestigen.

6. Kies de juiste transportbandmethode

Zoals u kunt zien in de demo’s, kan een transportband worden geprogrammeerd als een lineair mechanisme of als een pythonprogramma. U kunt lezen over de voordelen van beide benaderingen in ons artikel Een robottransportband programmeren zonder gek te worden.

7. Gebruik onderdeelnamen voor detectie

Als je naar de tweede demo kijkt (die een 2D-camera gebruikt), is het niet meteen duidelijk hoe de sensor elk onderdeel detecteert. Het “geheim” is dat RoboDK gemeenschappelijke onderdeelnamen gebruikt om bij te houden welke objecten kunnen worden gemanipuleerd.

Klik met de rechtermuisknop op de OnderdelenNaarPallet Python-script en selecteer Python-script bewerken. Je ziet de PART_KEYWORD is ingesteld op ‘Part’. Alle grijpbare objecten in de simulatie beginnen met dit trefwoord. De sensor detecteert alleen objecten met de juiste naam.

8. Lijn de snelheden zorgvuldig uit

Een van de grootste uitdagingen bij het programmeren van transportbanden is dat u de snelheden van de robot en de transportband zorgvuldig moet afstemmen.

Als je naar de derde demo kijkt (met de lasersensor) zie je het effect van een verkeerd uitgelijnde snelheid. Dubbelklik op de SetSimulationParams script. Klik op OK voor de doosmaat en palletmaat, maar verander de snelheid van de transportband naar 60 mm/s. Dubbelklik op Hoofdsimulatie om het programma te starten. Je zult zien dat de robot enkele dozen begint te missen.

9. Probeer het te breken!

Een van de beste manieren om een ​​robuust robotprogramma te ontwikkelen, is door te proberen het te ‘breken’, zoals we zojuist hebben gedaan door te spelen met de snelheid van de transportband. Als uw programma correct werkt, kan het u een vals gevoel van veiligheid geven.

Probeer te achterhalen in welke situaties het programma faalt. Op die manier kunt u er zeker van zijn dat uw robotprogramma echt bestand is tegen veranderingen.

10. Bereid je voor om te testen in de echte wereld

Een simulatie is uiteindelijk maar een simulatie. Pas als je je programmeert naar de echte robot en test met een fysieke lopende band, kun je zien of het ook echt werkt in de praktijk.

Vergeet niet dat transportbanden lastig zijn. Wees bereid om uw programma meer te testen dan u zou doen als u geen lopende band zou gebruiken.

About admin

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *