Autonomous Chess Playing Robotic Arm

Programvarubeskrivning:

  • · Python Idle : Detta är den kodningsplattform som används i detta projekt. Hela roboten är kodad i Python-språk på Python Idle.
  • · öppna Cv: Detta är ett Bildbehandlingsbibliotek som används för att ge roboten visionen om schackbrädet.
  • · Pyfirmata: detta används för att koda Arduino i Python-språk. I grund och botten ansluter detta Arduino till Python Idle istället för Arduino Ide.

Concepts for Autonomous Chess playing Robotic Arm: Working of robotic Arm involves series of concepts and mechanisms:

1. Forward Kinematics : Med tanke på vinklarna för servomotor framåt kinematik handlar om att hitta önskad position för Ändeffektorn.(dvs med tanke på servovinklarna som theta_1, Theta_2 och theta_3 framåt kinematik hjälper till att hitta X -, Y-och Z-koordinater eller position för sluteffektorn).Detta används också för att kontrollera om vinklar erhållna genom invers kinematik är korrekta eller inte. Videon finns i den här zip-filens” Videos ” – mapp.

2. Inverse kinematik: med tanke på X -, Y-och Z-koordinaterna för sluteffektorn handlar den inversa kinematiken om att hitta de önskade vinklarna för servon för att nå önskad plats. (till exempel : för att plocka ett objekt som är placerat i position (X, Y, Z) kan invers kinematik användas för att nå det specifika objektet och ta tag i det. Videon finns i den här zip-filens” Videos ” – mapp.

3. Kinematiska Diagram: dessa är diagrammen som används för att härleda och lösa ekvationerna för framåtriktad och invers kinematik. Jag löste kinematiskt diagram för en 3dof ledad Manipulator.

4. Denavit-hartenberg parametrar : detta är en metod för att enkelt lösa framåt kinematik genom att skapa en Parametertabell.

5. Rotationsmatriser och Förskjutningsvektorer : Dessa används för att hitta homogen Transformationsmatris och även för att konvertera kamerakoordinater till Robots basramkoordinater.

6. Bildbehandling : detta används för att ge Robotvision om vad som händer på schackbrädet som om move spelas eller inte eller om move spelas av vitt eller svart.

steg för steg bearbetning av robotarm:

· Steg 1: första inmatningen från spelaren ges om han vill ha svart eller vitt. Om spelaren väljer vit tar robotarmen svart färg och svart färg ges som inmatning och vice versa om spelare väljer svart antar att spelaren väljer vit här

· steg 2: Spelet startar. Så snart spelet börjar börjar bildbehandlingen kontrollera om white spelade flytten. Detektering av rörelse detekteras genom enkel subtraktion av två bilder första är originalbild och andra är den nya bilden bildas till förändringar av positionen av bitar ombord. Om subtraktion resulterar i ingenting betyder det att inget drag spelas. Om subtraktion resulterar i en icke-nollmatris spelas move av vit. Detta låter Robot förstå om drag spelas eller inte.

· steg 3: Antag att vita pjäser flyttar E4 här. Flytta detekteras av bildbehandling. Sedan hämtar robot flytten från sin schacköppningsordlista som jag skapade och spelar sedan flytten i enlighet därmed. Ordboken är som {”e5”: koordinater }. Från detta får roboten de önskade koordinaterna och sedan genom invers kinematik plockar upp bonden från E7 square och placerar den på e5 square. Så här plockning och placering av bit fungerar.

· steg 4: Hela processen fortsätter att upprepa sig om inte spelet kommer till slutsats. Hela roboten styrs av Arduino pro mini som styr och ger nödvändig PWM till motorer.

slutsats: roboten upptäcker framgångsrikt de rörelser som spelas och plockar också upp och placerar schackpjäserna exakt och exakt på schackbrädet med hjälp av bildbehandling.

WorkingVideo: kolla gärna arbetsvideoen för detta projekt nedan:)

Lämna ett svar

Din e-postadress kommer inte publiceras.