Tredje Veckan

Denna veckan har flutit på ganska bra förutom ännu ett missöde nu i slutet av veckan.

Under tiden vi satt och väntade på vår PWM HAT försökte vi få den trådlösa kommunikationen med Raspberry:n att funka. Tanken är att styra roboten (Gudrun) med en Ps3 handkontroll.

Vi hade redan köpt in en Bluetooth dongel 4.0 CE (raspberry pi kompatibel) och denna monterade vi på Raspberry:n via en av usb-kontakterna. Vi installerade Bluetooth dongeln till Raspberryn och sedan "parade vi ihop" denna med handkontrollern så att de  började kommunicera. Detta gick smidigt med hjälp av guider från internet.

Sedan började vi exprimentera med servona och styra dem beroende på vad som trycktes in på handkontrollen. Efter några försök så lärde vi oss hur kommandona funkade i programmeringen för att läsa av handkontrollen och då rörde sig servona precis som vi ville. 

När cylindrarna levererades så bestämmde vi oss för att montera ihop allting till själva "roboten", för att lättare kunna se vad som hände när vi programmerade på olika sätt och så här blev resultatet:

"före"

 byggBygger

Författarens egen bild

"efter"

Robot

 Författarens egen bild

När vi sedan började programmera så gick åter igen PWM HAT:en sönder, trots att den funkat bra de senaste dagarna och vi vet fortfarande inte varför. Vi har en teori om att cylindrarana drar för mycket ström och att detta tillsammans de 7 servona bidrar till överhettning. 

 Vi har precis lyckats ladda upp videor så dessa är sedan 1-2 veckor tillbaka, först från första veckan vid uppstart av Raspberry:n och första programmeringskoden i Python:

 

import RPi.GPIO as GPIO ## Import GPIO library
import time ## Import 'time' library. Allows us to use 'sleep'
GPIO.cleanup()
GPIO.setmode(GPIO.BOARD) ## Use board pin numbering
GPIO.setup(11, GPIO.OUT) ## Setup GPIO Pin 11 to OUT
GPIO.setup(12, GPIO.OUT) ## Setup GPIO Pin 12 to OUT
GPIO.setup(13, GPIO.OUT) ## Setup GPIO Pin 13 to OUT
 
##Define a function named Blink()
 
def Blink():
while True:
            for i in range(0,5):## Run loop numTimes
                    GPIO.output(11,True)      ## Switch on pin 7
                    time.sleep(i)                     ## Wait
                    GPIO.output(11,False)    ## Switch off pin 7
                    time.sleep(i)                     ## Wait
                    GPIO.output(12,True)      ## Switch on pin 7
                    time.sleep(i)                     ## Wait
                    GPIO.output(12,False)    ## Switch off pin 7
                    time.sleep(i)                     ## Wait
                    GPIO.output(13,True)      ## Switch on pin 7
                    time.sleep(i)                     ## Wait
                   GPIO.output(13,False)     ## Switch off pin 7
                   time.sleep(i)                      ## Wait
 
 
Blink()
 
 

 

Vecka två programmerade vi sedan servona att rotera 0-180 grader i Python. 

 

KarriärTjänsterOm ossBloggar