Viidennen projektin (sulautettujen järjestelmien ohjelmistokehitysprojekti) aiheena oli UR-5 robotti, joka pelaa ihmistä vastaan ristinollaa, eikä häviä. Robottikäteen yhdistetty kamera otti kuvan pelilaudasta ja sen pohjalta tietokoneella ollut Python-ohjelma päätti seuraavan siirron minimax-algoritmia käyttäen.
Minun vastuullani tässä projektissa oli Python-koodin kirjoittaminen, enkä ollut osannut sitä juuri lainkaan ennen projektia. Alustava koodi suunniteltiinkin C++:lla. Koodin tuli muodostaa TCP-yhteys robotille, päättää liike sille lähetettyjen arvojen perusteella, lähettää seuraava liike ja tarkistaa voittotilanne.
Python-koodin lisäksi tein yksinkertaisen Code Igniter-pohjaisen nettisivun, johon voitot, tasapelit ja häviöt olisivat tallentuneet MySQL-tietokantaan.
Projekti saatiin melko valmiiksi; tekoäly ja kuvantunnistus toimivat, mutta robottipuolen TCP-koodissa oli jonkinlainen häiriö, eikä liikkeiden vastaanotto onnistunut ja tässä vaiheessa aika loppui kesken.
Projektinhallintatyökaluna käytettiin Taigaa ja pidimme viikottain projektipalaverin ohjaavan opettajan kanssa.
Python-koodi GitHubissa:Robotti ja pelilauta