Mobiele Robot Arm DoArm S7 door wifi Arduino uno r3 (5 / 7 stap)

Stap 5: Controle voor robotarm


4.1 mens-computer interactie

Aangezien ESPduino reeds ingebouwde de Telnet-functie, kunnen we ons realiseren de mens-computer interactie, controleren de running-state, huidige positie, de stroomsnelheid en enzovoort, door Telnet. Op hetzelfde moment, kunnen wij het model van het verkeer voor één of meerdere assen en verkeer locatie configureren.

ESPduino verbinding maakt met de draadloze router, PC verbinding kan maken het IP-adres van de ESPduino door Telnet-Tools (zoals SecureCRT). De poort verbinden is 23, die wordt weergegeven in figuur 6.

Door Telnet, kunnen we de controle van de robotarm door
de volgende opdrachten, die als volgt zijn gedefinieerd.

"h": afdrukken van de help-informatie;

"z": laat de axises voor robotarm terug naar nul locatie (dat wil zeggen, de oorspronkelijke standaardlocatie gedefinieerd in de bovenstaande secties), die worden gedefinieerd wanneer wij opgericht naar de D-H-matrix. Dan is de locatie bezwaar na macht, 0 voor elke as, zoals weergegeven in figuur 7.

"p": afdrukken van de huidige stand van de robot
arm, zoals in de volgende afbeelding. De informatie omvat staat, instelling snelheid, huidige hoek voor elke as object hoek en de huidige positie matrix voor de bedieningssleutel einde.

"d": controleren of instellen van de huidige snelheid, waarvan de rang van de snelheid wordt gedefinieerd als 1 ~ 10, waarbij "1" de laagste snelheid en '10' is de snelste snelheid.

"c": houden van de huidige positie voor de bedieningssleutel van het einde en laat bedieningssleutel respectievelijk samen met de x-as, y-as en z-as in Cartesiaanse coördinaten verplaatsen. De unite is mm.

"t": houden van de huidige positie voor de bedieningssleutel en laat bedieningssleutel respectievelijk samen met de x-as, y-as en z-as in de Tool coördinaten verplaatsen. De unite is mm.

"s": single-as beweging. Aan het begin, is elke as op de nul locatie, en de hoek is gedefinieerd als 0, de werkingssfeer is-90 mate ~ 90 graden. De positieve en negatieve wordt bepaald door de regel van de rechterhand.

"w": naar de ontworpen locatie verplaatsen.

"g": controle van de grijper (poot). Bijvoorbeeld, is g:45 bedoeld om te laten de poot hoek van 45 graden open door het besturingselement voor de servo.

Vergelijkbaar met de slimme 3-kleuren LED, DoArm broncode kan worden verstrekt web configuratie en OTA bijgewerkt functie, zoals weergegeven in figuur 7.

4.2 label en initialisatie

Wanneer u de servo verlengkabel willekeurig op de gedreven bestuur aansluit, ten eerste, we moeten elke as van robot arm is overeenkomt met het kanaal op het gedreven bord, respectievelijk. Bevestig de excursie voor de nul locatie; tot slot bevestigen het toegestaan voortbewegende toepassingsgebied.

(1) bevestigen het zendernummer op het aangedreven bord voor elke robotarm

Wanneer u de servo verlengkabel op de gedreven bestuur aansluit, is het zeer moeilijk te onderscheiden van het getal dat overeenkomt met het kanaalnummer op het bord. Dus, we gewoon invoegen de servo verlengkabel op het bord willekeurig, zoals weergegeven in figuur 8.

Figuur 8 Servo verlengkabel op het gedreven bord

In de broncode, laat de functie initParseData() instellen van de bias [6] als {0,0,0,0,0,0}, en de bewegende scope voor elk zwaartepunt binnen-90 ° ~ 90 °.

Bias afstand voor elke as verplaatsen

zweven bias [6] = {0, 0, 0, 0, 0, 0};

arm.setServoBias (bias, 6);

ruimte voor elke as verplaatsen

arm.setServoRange (-90, 90,-90, 90,-90, 90,-90, 90,-90, 90,-90, 90,);

laat arm.setChannel() worden de werkelijke toegang-kanaal. Zoals aangetoond in figuur 8, het kanaal van toegang is 1,3,4,9,11,13, respectievelijk, dan laat

arm.setChannel (1, 3, 4, 9, 11, 13);

Compileren van de code en het downloaden van ESPduino, de mens-computer-interface openen met behulp van Telnet, gebruik van de opdracht "s:x, y" om te bevestigen de bijbehorende relatie voor elk zwaartepunt. Bijvoorbeeld,

Met behulp van "s:1, 10", laat zwaartepunt 5 zet, waarna kanaal "1" schrijven in de 5e as;

Met behulp van "s:2, 10", laat as 6 verplaatsen, en vervolgens kanaal "3" schrijven in de 6de as;

Met behulp van "s:3, 10", laat as 4 zet, waarna kanaal "4" schrijven in de 4e as;

Met behulp van "s:4, 10", laat as 2 beweging, en vervolgens kanaal "9" schrijven in de 2de as;

Met behulp van "s:5, 10", laat zwaartepunt 1 beweging, en vervolgens kanaal "11" het schrijven in de 1e as;

Met behulp van "s:6, 10", laat zwaartepunt 3 beweging, en vervolgens kanaal "13" schrijven in de 3e as;

Vervolgens kunnen we de uiteindelijke juiste bijbehorende relatie tussen de as voor de robotarm en het kanaal op de gedreven bestuur, zoals in de volgende functie.

arm.setChannel (11, 9, 13, 4, 1, 3);

Aangezien de gripper slechts een is, laat het invoegen van een niet-actieve kanaal en stel deze toepassing door

arm. setGripperChannel () 。

instellen van het kanaalnummer voor de grijper

arm.setGripperChannel(14);

(2) bevestigen de excursie (voor de nul locatie van de elke as)

Na bevestigen dat de bijbehorende relatie tussen de as en het kanaal, de source code is nodig om opnieuw gecompileerd en downloaden naar de ESPduino opnieuw uit te voeren. We kunnen de excursie bias voor elk zwaartepunt bevestigen met behulp van de opdracht Telnet.

Ten eerste is de snelheid als de laagste rang, de opdracht set d:1, 1

Figuur 9 instellen de laagste rang van de snelheid

Vervolgens, met behulp van "s:x, y" te laten enkele as om de nul locatie verplaatsen. In het algemeen, de nul locatie (middellange locatie) o. gebruiken is "s:x, y" om te bevestigen of de as op nul locatie ligt. Als niet, vervolgens opdracht "s" te laten deze as naar nul locatie. "S:1, 65" wordt bijvoorbeeld aangegeven dat deze as verplaatsen van 65 graden moet om de nul locatie. In dit geval wordt de opdracht als volgt vermeld.

excursie voor middelgrote locatie

zweven bias [6] = {65, 5 -8, 5, 0, 0};

arm.setServoBias (bias, 6);

Vervolgens na compilatie, zal de robotarm automatisch worden hersteld naar de nul locatie, zoals in figuur 10.

Figuur 10 DoArm op de beginstatus

(3) bevestigen de bewegende scope voor elk zwaartepunt

Na bevestiging voor nul locatie, we kunnen bevestigen het bewegende toepassingsgebied voor elke as met behulp van "s:x, y" met Telnet mens-computer interactie. Vanwege de beperkingen, het toepassingsgebied van de hoek voor servo is ingesteld als-90 ° defaultly ~ 90 °. In dit geval is het bewegende toepassingsgebied als volgt. Merk op dat, als het bewegende toepassingsgebied wordt overtroffen, wordt de servo zou worden gestopt.

in dit geval ruimte voor elke as verplaatsen

arm.setServoRange (-90, 30 -30, 60, -40, 35,-90, 90, -50, 90, -80, 80);

(4) controle voor grijper

Het besturingselement axises voor grijper los op de andere 6 staat, zodat we "g:x" commando gebruiken kunnen om te controleren de grijper, zoals weergegeven in figuur 11.

(a) standpunt voor grijper op 0 graden

(b) positie voor grijper op 20 graden

(c) positie voor grijper op 45 graden

Figuur 11 controle voor grijper

4.3 interne asbesturing

In de Telnet-interface, wij "s:x, y" opdracht kunt bepalen van de enkele as, waar x duidt de ontworpen bewegende as, toepassingsgebied is 1 ~ 6; y geeft de absolute hoek, het toepassingsgebied is toegestaan op grond van elke as met float type. Na elke actie, kan de huidige status voor robotarm automatisch worden weergegeven.

Figuur 12 de output voor enkele as verkeer

4.4 gezamenlijk controle

Gezamenlijk geeft controle dat de 6 axises verkeer op hetzelfde moment. Het heeft 3 standen: 1. verkeer blijft door de vaste locatie; 2. verkeer van einde bedieningssleutel in de cartesiaanse coördinaten; 3. verplaatsing van einde bedieningssleutel in het hulpprogramma coördineert.

(1) blijft verkeer door de vaste locatie

Wij bieden de methoden arm.setWaitPosition () en de arm.gotoWaitPosition(), die is vastgesteld de vaste locatie, en zet op deze plaats, respectievelijk. Wij bieden in onze broncode, de broncode voor 9 gezamenlijk controleren. DoArm kan worden verplaatst door "w:x", waarbij "x" staat voor 0 ~ 8. Vooral de opdracht "w:9" kunt beginnen 9 blijven bewegingen. Deze video is te zien op:

http://v.Youku.com/v_show/id_XMTQ5ODk0NzEyMA==.html?from=Y1.7-1.2

(2) beweging van eind bedieningssleutel in de Cartesische coördinaten

De omgekeerde cinematica functie calcReverseKinematics() kan worden verstrekt voor het berekenen van de ontworpen positie of omgekeerde hoek voor de robot arm einde actuator. Vooral, biedt Telnet interactie de opdracht samen met x, y, z-as in de cartesiaanse coördinaten; dat wil zeggen, "c:x, y, z", waarbij x, y, z, duidt de prijs samen met x, y en z-as met verenigen mm type zweven.

Bijvoorbeeld, als laat eindigen actuator 20mm samen met de z-as te verplaatsen, de opdracht is "c:0, 0, 20", en vervolgens terug te keren "c:0, 0, -20". De robotarm zou 20mm verplaatsen in verticale richting, en verplaats vervolgens 20mm in de omgekeerde richting. Tot slot, de arm zou terugkeren naar de oorspronkelijke locatie. Op dit moment is de locatie nul. Toen kreeg de opdracht "c:0, 0, 20", is de locatie (0.000,2.358,-11.361,0.000,9.003,0.000); Hierna voert de opdracht "c:0, 0, -20", de locatie is (0.000,-0.000, 0.000, 0.000,-0.000, 0.000), zoals afgebeeld in figuur 13.

Figuur 13 beweging in Cartesiaanse coördinaten

(3) beweging van eind bedieningssleutel in Tool coördinaten

Vergelijkbaar met de beweging in de cartesiaanse coördinaten, het verschil is dat de actuator in de coördinaten van de Tool beweegt (overeenkomend met de O6). De opdracht is "t:x, y, z", waarbij x, y, z zijn de increasements samen met de x, y, z-as met mm verenigen en type zweven.

Bijvoorbeeld, laat de bedieningssleutel van de eind 20mm aan de initiële status samen met X-as bewegen. De opdracht is "t:20, 0, 0", en terugkeer naar de oorspronkelijke locatie is "t:-20,0,0". Vervolgens zou de bedieningssleutel einde worden in de eerste 20mm langs met x-as te verplaatsen, en vervolgens gemakkelijk teruggaan 20mm door de omgekeerde richting. We kunnen het analyseren van de resultaten in de Telnet-interface. Vanaf de eerste locatie 0.000, toen kreeg de opdracht "t:20, 0, 0", is de locatie (0.000,2.358,-11.361,0.000,9.003,0.000); Daarna voert de opdracht "t:-20,0,0", is de locatie (0.000,-0.000, 0.000, 0.000,-0.000, 0.000).

Figuur 14 beweging in het hulpprogramma coördineert

Gerelateerde Artikelen

Shapeoko 2, Arduino UNO R3, grbl 9g, 8 bit Laser Diode foto graveren

Shapeoko 2, Arduino UNO R3, grbl 9g, 8 bit Laser Diode foto graveren

Mij en mijn zoon ontwikkelde uitgevonden/een nieuw concept van de "On-The Fly" 8 bit Diode Laser graveren foto's meer dan twee jaar geleden. Met dit concept, de Laser Diode nooit uitgeschakeld door de hele foto gravure proces. Het verschilt gewo
DIY: Deur alarmsysteem met behulp van de Arduino Uno

DIY: Deur alarmsysteem met behulp van de Arduino Uno

dit is een deur alarm-systeem dat gemakkelijk kan worden gebouwd en geïnstalleerd. Het maakt gebruik van het fundamentele beginsel uiteengezet door de Arduino Uno ontwerpers die is het gebruik van de Sensor, Microcontroller en de bedieningssleutel. I
DIY: Deur alarm met behulp van het apparaat van de Hall en de Arduino Uno

DIY: Deur alarm met behulp van het apparaat van de Hall en de Arduino Uno

dit is een deur alarm-systeem dat gemakkelijk kan worden gebouwd en geïnstalleerd. Het maakt gebruik van het fundamentele beginsel uiteengezet door de Arduino Uno ontwerpers die is het gebruik van de Sensor, Micro-controller en de bedieningssleutel.
Parker1 WiFi / 4 G mobiele Robot

Parker1 WiFi / 4 G mobiele Robot

Parker1 is een goedkope WiFi / 4G mobiele robot met visie vermogen. Het loopt met twee populaire open sourcesoftware, compatibel code van de Arduino voor gemakkelijk robot programmatie en OpenWrt router OS voor een verscheidenheid van connectiviteit
Robot Arm Arduino App

Robot Arm Arduino App

We hadden behoefte aan een platform voor het testen van onze nieuwe MICILE / Arduino gebruikersinterface. De robot hand en arm leek iets complex genoeg om echt het concept een uitgebreide training. Het project konden we gebruik van een MICILE Tablet,
Xbox 360 ROBOTIC ARM [ARDUINO]: AXIOM ARM

Xbox 360 ROBOTIC ARM [ARDUINO]: AXIOM ARM

AXIOM ARM werd ontworpen door Sergei Dines: Mechanical Engineer Senior op USF (Tampa).LinkedIN: http://www.linkedin.com/in/sergeidinesWebsite: http://www.surgerobotics.com/E-mail: sergeidinesNieuw!! : Verkorte versie bezoek: http://www.intorobotics.c
Arduino Robot Arm Mixologist

Arduino Robot Arm Mixologist

"Maar wacht," zou je zeggen, "Ik dacht dat RobotGeek al gepubliceerd een instructable over het gebruik van een robotarm voor het leveren van dranken!" Die we zeggen, "Ja, maar niet uitzien." Het laatste project kon schotel ui
Arduino Robot Arm barman

Arduino Robot Arm barman

Wilt u wel eens een robot die kan pop uit de schoten? De toekomst van feesten is hier met de Robot Arm barman! Serveren drankjes in stijl, en maak indruk op uw gasten met de druk op de knop! Dit project maakt gebruik van een RobotGeek Snapper Arm met
RC wifi auto Robot camera met behulp van de Arduino en openWRT

RC wifi auto Robot camera met behulp van de Arduino en openWRT

Een auto van de wifi op basis van Arduinodoor openWRT aanklagenDoel: DIY een draadloze auto op basis van Arduino. Door het beheersen van de auto, wij kunnen zien de andere dingen die op de externe locatie, of bewaakt de veiligheid.Effect door afbeeld
Arduino Robot Arm

Arduino Robot Arm

ik had beloofd in een vorige post te delen met u een arduino robot arm project op een later tijdstip. Nou, is die datum vandaag! Echter, in plaats van een joystick gebruikt om te controleren de arduino robotarm, I 'm gonna vooraf het programma van de
Zelfgemaakte Scara Robot Arm Robotic Draw met Arduino Control

Zelfgemaakte Scara Robot Arm Robotic Draw met Arduino Control

Zelfgemaakte Scara Robot Arm Robotic vestigen controle van de Arduino DIY Laser graveren Frame 3D Printer, PlotterMaterialen:1 stk 57 mm stappenmotor 1.8 graden nemen van oude fotokopie machine1 stk 42 mm stappenmotor 1.8 graden nemen van oude fotoko
Robot IR afstandsbediening bijgehouden door Arduino

Robot IR afstandsbediening bijgehouden door Arduino

Vele jaren geleden, had ik bestudeerd Dual H-brug motor rijden controle door het hacken van goedkope 4 channals speelgoed afstandsbediening bestuur en toegepast op externe twin motors track en wiel set. Nu probeer ik gebruik Arduino controller met IR
Mobiele controlled robotic auto met behulp van de arduino en DTMF

Mobiele controlled robotic auto met behulp van de arduino en DTMF

Hallo jongens!Dit is mijn eerste project op instructables, hoop dat u zult genieten van dit.Dit project gaat over hoe u een robotachtige auto met behulp van de mobiele telefoon kunt controleren en hoe u kunt controleren die auto van overal in de were
Zelfgemaakte Scara Robot Arm DIY robot Frame projecten Chassis Draw Arduino Control

Zelfgemaakte Scara Robot Arm DIY robot Frame projecten Chassis Draw Arduino Control

Zelfgemaakte Scara Robot Arm DIY robot Frame projecten Chassis Draw Arduino controleMaterialen:1 stk aluminiumlegering 245 x 42 x 12 mm1 stk aluminiumlegering 200 x 22 x 12 mm1 stk aluminiumlegering 100 x 160 x 12 mm voor bed1 stk stap motor 42 x 48