Exemple #1
0
def setup_servo():
    wiringpi.wiringPiSetupGpio()
    wiringpi.pinMode(18,2)      # hardware pwm only works on GPIO port 18  
    wiringpi.pwmSetMode(0)
    wiringpi.pwmSetClock(375)
    wiringpi.pwmSetRange(1024)
    wiringpi.pwmWrite(18,0)
Exemple #2
0
    def __init__(self, name, pwm_port, backward_port, forward_port):
        self.name = name
        self.pwm_port = pwm_port
        self.backward_port = backward_port
        self.forward_port = forward_port
        self.backward_value = 0
        self.forward_value = 0
        # initialize Raspberry Pi ports for output
        wiringpi2.pinMode(self.pwm_port, wiringpi2.GPIO.PWM_OUTPUT)
        wiringpi2.pinMode(self.backward_port, wiringpi2.GPIO.OUTPUT)
        wiringpi2.pinMode(self.forward_port, wiringpi2.GPIO.OUTPUT)

        # experimentally found values (use test_pwm.py):
        # frequency = 19200 (not hearable)
        # divisor = 2
        # range = 500
        # dead zone <= 53%

        self.mapping_u = [0, 1, 100]
        self.mapping_pwm = [0, 20, 100]
        
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS);
        # 480 Hz
        self.divisor = 40
        self.pwm_range = 1000
        wiringpi2.pwmSetRange(self.pwm_range)
        wiringpi2.pwmSetClock(self.divisor)
        # pwmFrequency in Hz = 19.2 MHz / pwmClock / pwmRange
        self.logger = logging.getLogger(__name__)
Exemple #3
0
 def set_pwm(self):
     wiringpi.wiringPiSetupGpio()
     wiringpi.pinMode(self.gpio_pin, 2)
     wiringpi.pwmSetMode(0)
     wiringpi.pwmSetClock(self.clock)
     wiringpi.pwmSetRange(self.range)
     wiringpi.pwmWrite(self.gpio_pin, 0)
Exemple #4
0
def main():	
	print "Starting PWM"
	
	wiringpi.wiringPiSetupGpio()
	
	wiringpi.pinMode(18,2)
	wiringpi.pwmSetMode(0)
	wiringpi.pwmSetClock(400)
	wiringpi.pwmSetRange(1024)
	wiringpi.pwmWrite(18,0)

	wiringpi.pinMode(13,2)
	wiringpi.pwmSetMode(0)
	wiringpi.pwmSetClock(400)
	wiringpi.pwmSetRange(1024)
	wiringpi.pwmWrite(13,0)
	
	
	dtMin, dtMax = 60, 120
	dt = 72
	while True:
		try:
			print dt
			wiringpi.pwmWrite(18,dt)
			wiringpi.pwmWrite(13,dt)
			dt += 10
			if dt > dtMax:
				dt = dtMin
			time.sleep(1)
		except:
			wiringpi.pwmWrite(18,0)
			wiringpi.pwmWrite(13,0)
			print "Exiting."
			break
Exemple #5
0
def setup_servo():
    wiringpi.wiringPiSetupGpio()
    wiringpi.pinMode(18, 2)  # hardware pwm only works on GPIO port 18
    wiringpi.pwmSetMode(0)
    wiringpi.pwmSetClock(375)
    wiringpi.pwmSetRange(1024)
    wiringpi.pwmWrite(18, 0)
Exemple #6
0
	def __init__(self):
		Pi_rev = wiringpi2.piBoardRev()	#@TODO: use this?
		self.GPIOS = {
			'internal_buzzer': 11,
			'latch': 7,
			'unlock_LED': 15,
			'deny_LED': 13,
			'buzzer': 12, 
			'doorStatus1': 19,
			'doorStatus2': 21,
		}
		
		#set up I/O pins
		wiringpi2.wiringPiSetupPhys()
		wiringpi2.pinMode(self.GPIOS['unlock_LED'], 1)
		wiringpi2.pinMode(self.GPIOS['deny_LED'], 1)
		wiringpi2.pinMode(self.GPIOS['latch'], 1)
		wiringpi2.pinMode(self.GPIOS['internal_buzzer'], 1)
		wiringpi2.pinMode(self.GPIOS['doorStatus1'], 0)
		wiringpi2.pinMode(self.GPIOS['doorStatus2'], 0)
		
		GPIO.setup(9, GPIO.IN)  
		GPIO.setup(10, GPIO.IN)  
		#GPIO.add_event_detect(9, GPIO.FALLING, callback=self.arm_security, bouncetime=300)
		#Set up Hardware PWM - Only works on GPIO 18 (Phys 12)
		wiringpi2.pwmSetMode(0)				# set PWM to markspace mode
		wiringpi2.pinMode(self.GPIOS['buzzer'], 2)      # set pin to PWM mode
		wiringpi2.pwmSetClock(750)   			# set HW PWM clock division (frequency)
		wiringpi2.pwmWrite(self.GPIOS['buzzer'], 0)
		
		proc = subprocess.Popen(['nfc-list'], stderr=subprocess.PIPE)
		result = proc.stderr.read()
		self.PN532 = False if 'Timeout' in result else True
		if not self.PN532:
			self.nfc = NFC.MFRC522()
    def __init__(self,
                 PIN_IN1_L=5,
                 PIN_IN2_L=6,
                 PIN_IN1_R=7,
                 PIN_IN2_R=8,
                 PIN_VREF_L=12,
                 PIN_VREF_R=13):
        self.PIN_IN1_L = PIN_IN1_L
        self.PIN_IN1_R = PIN_IN1_R
        self.PIN_IN2_L = PIN_IN2_L
        self.PIN_IN2_R = PIN_IN2_R
        self.PIN_VREF_L = PIN_VREF_L
        self.PIN_VREF_R = PIN_VREF_R
        GPIO.setmode(GPIO.BCM)
        GPIO.setup(self.PIN_IN1_L, GPIO.OUT)
        GPIO.setup(self.PIN_IN2_L, GPIO.OUT)
        GPIO.setup(self.PIN_IN1_R, GPIO.OUT)
        GPIO.setup(self.PIN_IN2_R, GPIO.OUT)

        wp.wiringPiSetupGpio()
        wp.pinMode(self.PIN_VREF_L, wp.GPIO.PWM_OUTPUT)
        wp.pinMode(self.PIN_VREF_R, wp.GPIO.PWM_OUTPUT)
        wp.pwmSetMode(wp.PWM_MODE_MS)
        wp.pwmSetRange(Drive.MaxdutyRange)
        wp.pwmSetClock(400)  #適当
Exemple #8
0
	def __init__(self):
        wiringpi.wiringPiSetupGpio()
        wiringpi.pinMode(SERVO_PIN,2)
        wiringpi.pwmSetMode(0)
        wiringpi.pwmSetClock(375)
        angle = 90
        dutyCycle = int(angle/180.0*(0.14*1024)) + 6
        wiringpi.pwmWrite(SERVO_PIN,dutyCycle)
Exemple #9
0
    def __init__(self, freq = 100.0):
        self.freq = freq
        output_pins.append(12)
        wp.pinMode(12, PWM)
        wp.pwmSetRange(4000) #range can go up to 4096, 4000 is good because it's large and a multiple of 100
        clock = 19.2e6 / (4000.0 * freq) #set the divisor so the frequency comes out right
        wp.pwmSetClock(int(clock)) #this function needs an int
	wp.pwmSetMode(0) # necessary or else it's in a weird mode where nothing works
	wp.pwmWrite(12, 0) # stop for safety
Exemple #10
0
    def __init__(self):
        wiringpi2.wiringPiSetupGpio()

        self.SPEAKER = 18
        self.MODE_PWM = 2

        wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)

        wiringpi2.pwmWrite(self.SPEAKER, 0)
Exemple #11
0
    def __init__(self):
        wiringpi2.wiringPiSetupGpio()

        self.SPEAKER = 18
        self.MODE_PWM = 2

        wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)

        wiringpi2.pwmWrite(self.SPEAKER, 0)
Exemple #12
0
 def __init__(self, base0 = 27, base90 = 73):
     wiringpi.wiringPiSetupGpio()
     wiringpi.pinMode(18,2)
     wiringpi.pwmSetMode(0)
     wiringpi.pwmSetClock(400)
     wiringpi.pwmSetRange(1024)
     wiringpi.pwmWrite(18, 0)
     self.base0 = base0
     self.base90 = base90
     self.setAngle(90)
Exemple #13
0
	def __init__(self,in1,in2,in3):
		self.in1 = in1
		self.in2 = in2
		self.in3 = in3
		GPIO.setmode(GPIO.BCM)
		GPIO.setup(self.in1,GPIO.OUT)
		GPIO.setup(self.in2,GPIO.OUT)
                wiringpi.wiringPiSetupGpio()
                wiringpi.pinMode(self.in3, wiringpi.GPIO.PWM_OUTPUT)
                wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS)
                wiringpi.pwmSetClock(375)
                wiringpi.pwmWrite(self.in3,0)
def softPwm():
	print "SoftPwm Mode"

	wiringpi2.wiringPiSetup()
	wiringpi2.pinMode(PIN_TO_PWM,SET_PWM)
	wiringpi2.pwmSetMode(PWM_MODE_MS)	
	#wiringpi2.softPwmCreate(PIN_TO_PWM,0,100) # Setup PWM using Pin, Initial Value and Range parameters
	#wiringpi2.softServoSettup()
	#softServoWrite()
	wiringpi2.pwmWrite(PIN_TO_PWM, 900) 	
	wiringpi2.delay(150)
	print "PWM is in NEUTRAL"
Exemple #15
0
def init():
	GPIO.setmode(GPIO.BCM)
	wiringpi.wiringPiSetupGpio()
	wiringpi.pinMode(LEFT_MOTOR_PWM, 2)
	wiringpi.pinMode(RIGHT_MOTOR_PWM, 2)
	wiringpi.pwmSetMode(0)
	wiringpi.pwmSetClock(CLK_DIVISOR)
	wiringpi.pwmSetRange(MAX_SPEED)
	wiringpi.pwmWrite(LEFT_MOTOR_PWM, 0)
	wiringpi.pwmWrite(RIGHT_MOTOR_PWM, 0)
	GPIO.setup(LEFT_MOTOR_A, GPIO.OUT)
	GPIO.setup(LEFT_MOTOR_B, GPIO.OUT)	
	GPIO.setup(RIGHT_MOTOR_A, GPIO.OUT)
	GPIO.setup(RIGHT_MOTOR_B, GPIO.OUT)
Exemple #16
0
 def __init__(self, pin):
     self.dtMin, self.dtMax, self.dtMed = 35, 120, 65
     self.dt = self.dtMed
     self.pin = pin
     self.direction = ''
     wiringpi.wiringPiSetupGpio()
     wiringpi.pinMode(self.pin, 2)
     wiringpi.pwmSetMode(0)
     wiringpi.pwmSetClock(400)
     wiringpi.pwmSetRange(1024)
     try:
         wiringpi.pwmWrite(self.pin, 40)
     except Exception as e:
         print str(e)
Exemple #17
0
def setupIO():
    # Initialisation des entrées sorties sur le GrovePi #
    grovepi.pinMode(relay_pin,"OUTPUT")
    grovepi.pinMode(RGB_pin,"OUTPUT")
    grovepi.pinMode(PIR_pin, "INPUT")
    grovepi.chainableRgbLed_init(RGB_pin,8)
    
    # On génère un PWM hardware de fréquence 50Hz #
    # La largeur de l'impulsion est entre 0,8 et 2ms #
    wiringPi.wiringPiSetupGpio()
    wiringPi.pinMode(PWM_GPIO, 2)
    wiringPi.pwmSetMode(0)
    wiringPi.pwmSetClock(384)
    wiringPi.pwmSetRange(1024)
    wiringPi.pwmWrite(PWM_GPIO,75)
Exemple #18
0
def listener():
	rospy.init_node('listener', anonymous=True)

	rospy.Subscriber("chatter", String, callback)

	wiringpi.wiringPiSetupGpio()
	wiringpi.pinMode(pin,2)
	wiringpi.pwmSetMode(0)
	wiringpi.pwmSetClock(400)
	wiringpi.pwmSetRange(1024)
	wiringpi.pwmWrite(pin,0)

	wiringpi.pinMode(pin_dir[0],1)
	wiringpi.pinMode(pin_dir[1],1)

    # spin() simply keeps python from exiting until this node is stopped
	rospy.spin()
Exemple #19
0
def io_init():
    global io_initialized
    if io_initialized:
        return

    wiringpi2.wiringPiSetupGpio()
    wiringpi2.pinMode(12, wiringpi2.GPIO.PWM_OUTPUT)
    wiringpi2.pinMode(13, wiringpi2.GPIO.PWM_OUTPUT)

    wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
    wiringpi2.pwmSetRange(MAX_SPEED)
    wiringpi2.pwmSetClock(2)

    wiringpi2.pinMode(5, wiringpi2.GPIO.OUTPUT)
    wiringpi2.pinMode(6, wiringpi2.GPIO.OUTPUT)

    io_initialized = True
Exemple #20
0
    def __init__(self):
        self.pin_step = 1  # GPIO1, BCM pin 18 (labeled on pi plate 18)
        self.pin_dir = 6  # GPIO6, BCM pin 25 (labeled on pi plate 25)
        # the base clock is 19.2MHz and this is a divider
        self.pwm_base = 19.2 * 1000000
        self.pwm_divider = 16  # 1.2 MHz

        wiringpi2.pinMode(self.pin_dir, wiringpi2.GPIO.OUTPUT)
        wiringpi2.pinMode(self.pin_step, wiringpi2.GPIO.PWM_OUTPUT)
        wiringpi2.pwmSetMode(
            wiringpi2.GPIO.PWM_MODE_MS
        )  # mark/space i.e. run of 1s followed by run of 0s

        self.target = 0
        self.current = 0
        self.last_accum = time.time()
        self.volume = 0
Exemple #21
0
def io_init():
  global io_initialized
  if io_initialized:
    return

  wiringpi2.wiringPiSetupGpio()
  wiringpi2.pinMode(12, wiringpi2.GPIO.PWM_OUTPUT)
  wiringpi2.pinMode(13, wiringpi2.GPIO.PWM_OUTPUT)

  wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
  wiringpi2.pwmSetRange(MAX_SPEED)
  wiringpi2.pwmSetClock(2)

  wiringpi2.pinMode(5, wiringpi2.GPIO.OUTPUT)
  wiringpi2.pinMode(6, wiringpi2.GPIO.OUTPUT)

  io_initialized = True
Exemple #22
0
    def __init__(self):

        wiringpi2.wiringPiSetupGpio()

        self.SPEAKER = 18
        self.MODE_PWM = 2

        self.divisor = (19.2*(10**3))/440

        wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)

        screen = curses.initscr()
        curses.start_color()
        self.window = curses.newwin(10, 80, 5, 5)

        curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK)
        curses.init_pair(2, curses.COLOR_GREEN, curses.COLOR_BLACK)
Exemple #23
0
    def __init__(self):

        wiringpi2.wiringPiSetupGpio()

        self.SPEAKER = 18
        self.MODE_PWM = 2

        self.divisor = (19.2 * (10**3)) / 440

        wiringpi2.pinMode(self.SPEAKER, self.MODE_PWM)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)

        screen = curses.initscr()
        curses.start_color()
        self.window = curses.newwin(10, 80, 5, 5)

        curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLACK)
        curses.init_pair(2, curses.COLOR_GREEN, curses.COLOR_BLACK)
def io_init():
    global io_initialized
    if io_initialized:
        return

    wiringpi2.wiringPiSetupGpio()
    wiringpi2.pinMode(MODE, wiringpi2.GPIO.OUTPUT)
    wiringpi2.digitalWrite(MODE, LOW)
    wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
    wiringpi2.pwmSetRange(PWM_RANGE_HIGH)
    wiringpi2.pwmSetClock(2)
    wiringpi2.pinMode(AIN1, wiringpi2.GPIO.PWM_OUTPUT)
    wiringpi2.pinMode(BIN1, wiringpi2.GPIO.PWM_OUTPUT)
    wiringpi2.pinMode(AIN2, wiringpi2.GPIO.OUTPUT)
    wiringpi2.pinMode(BIN2, wiringpi2.GPIO.OUTPUT)
    wiringpi2.softPwmCreate(AIN2, PWM_RANGE_LOW, PWM_RANGE_HIGH)
    wiringpi2.softPwmCreate(BIN2, PWM_RANGE_LOW, PWM_RANGE_HIGH)

    io_initialized = True
Exemple #25
0
def dimming():
  if not setupOK(): setupBoard()
  wpi.pinMode(1,wpi.GPIO.PWM_OUTPUT)
  wpi.pwmSetMode(wpi.GPIO.PWM_MODE_BAL)
  delta = 2
  pwm = 1
  count = 0
  while count < 4:
    wpi.pwmWrite(1, pwm)
    pwm = pwm+delta
    if (pwm > 1024):
      pwm = 1024
      delta = -2
      count +=1 
    if (pwm < 1):
      pwm = 1
      delta = 2
    time.sleep(0.005)
  wpi.pinMode(1, wpi.GPIO.OUTPUT)
def Init():
	global on
	wiringpi.wiringPiSetupGpio()

	wiringpi.pinMode(13, 2)
	wiringpi.pwmSetMode(0)
	wiringpi.pwmSetClock(400)
	wiringpi.pwmSetRange(1024)

	wiringpi.pinMode(18, 2)
	wiringpi.pwmSetMode(0)
	wiringpi.pwmSetClock(400)
	wiringpi.pwmSetRange(1024)

	SetSP(1, 0.0)
	SetSP(2, 0.0)

	on = True

	procComms.PrintLog('Initialized servo control.')
    def __init__(self, node_name="servo_control"):

        rospy.init_node(node_name)
        sub = rospy.Subscriber("deg_control", Int16, self.callback)

        signal.signal(signal.SIGINT, self.exit_handler)

        self.gp_out = 18
        wiringpi2.wiringPiSetupGpio()
        wiringpi2.pinMode(self.gp_out, wiringpi2.GPIO.PWM_OUTPUT)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
        wiringpi2.pwmSetClock(375)

        self.RIGHT = 56
        self.CENTER = 76
        self.LEFT = 96

        self.current_deg = self.CENTER
        wiringpi2.pwmWrite(self.gp_out, self.current_deg)
        wiringpi2.delay(500)
    def __init__(self, node_name="telemouse_avoidance"):

        rospy.init_node(node_name)
        sub = rospy.Subscriber("disconfort", Int16, self.callback)
      
        pygame.mixer.init()
        self.hit_sound = pygame.mixer.Sound("n_418d125.wav")

        signal.signal(signal.SIGINT, self.exit_handler)

        self.gp_out = 18
        wiringpi2.wiringPiSetupGpio()
        wiringpi2.pinMode(self.gp_out, wiringpi2.GPIO.PWM_OUTPUT)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
        wiringpi2.pwmSetClock(375)

        self.RIGHT = 56
        self.CENTER = 76
        self.LEFT = 96

        self.rest_counter = 0
Exemple #29
0
def main():

  # use BCM GPIO numbers
  wp.wiringPiSetupPhys()
  # enable PWM0
  wp.pinMode(12,2)
  # switch from default mode to mark:space mode
  wp.pwmSetMode(PWM_MODE_MS)
  wp.pwmSetClock(200)
  wp.pwmWrite(12, 0)

  while True:
    try:
  wp.pwmWrite(12, 2)
      time.sleep(3)
      # turn then wait
      wp.pwmWrite(12,128)
      time.sleep(3)
      # turn then wait
      wp.pwmWrite(12, 256)
      time.sleep(3)
Exemple #30
0
    def startup_event(self, db, cfg):
        # config pwm
        wiringpi2.pinMode(self.PWM_PIN, wiringpi2.GPIO.PWM_OUTPUT)
        wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
        wiringpi2.pwmSetRange(self.PWM_RANGE)
        # 19.2 / 32 = 600KHz - Also starts the PWM
        wiringpi2.pwmSetClock(self.PWM_CLK_DIV)

        self.logd("Finding minimum fan speed...")
        if not self._find_minspeed():
            return False
        self.logd("Minimum fan speed: {}%".format(self._minspeed))

        self.set_highest_profile()
        # self.set_profile(40)
        if not self.add_requests(
            [["cpu_temp_profile", dict(profile="int")],
             ["cpu_fan_user", dict(speed="int")], ["cpu_fan_auto",
                                                   dict()]]):
            return False

        return True
Exemple #31
0
def softPwm():
	print "SoftPwm Mode"

	wiringpi2.wiringPiSetup()
	wiringpi2.pinMode(PIN_TO_PWM,SET_PWM)
	wiringpi2.pwmSetMode(PWM_MODE_MS)	
	#wiringpi2.softPwmCreate(PIN_TO_PWM,0,100) # Setup PWM using Pin, Initial Value and Range parameters
	#wiringpi2.softServoSettup()
	#softServoWrite()
	while True:
		for i in range(900, 1000):
			wiringpi2.pwmWrite(PIN_TO_PWM, i) 	
			wiringpi2.delay(150)
			print "Write to PWM: ", i
		for k in reversed(range(800, 1000)):
			wiringpi2.pwmWrite(PIN_TO_PWM, k) 	
			wiringpi2.delay(150)
			print "Write to PWM: ", k
		for i in range(800, 900):
			wiringpi2.pwmWrite(PIN_TO_PWM, i) 	
			wiringpi2.delay(150)
			print "Write to PWM: ", i
Exemple #32
0
def unlock():
	print "Unlock Key"
	param = sys.argv
	setdegree = int(90)
	print setdegree

	wiringpi2.wiringPiSetupGpio()
	wiringpi2.pinMode(servopin,2)
	wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)
	wiringpi2.pwmSetClock(375)

	wiringpi2.pwmWrite(servopin,133)
	for i in range(133,73-1,1):
	  print i
	  wiringpi2.pwmWrite(servopin, i)
	  wiringpi2.delay(500)
	
	

	wiringpi2.pwmWrite(servopin,26)
	wiringpi2.delay(500)
	wiringpi2.pwmWrite(servopin,74)
Exemple #33
0
#    GNU General Public License for more details.
#
#    http://www.gnu.org/licenses/gpl.html
#

import wiringpi2

wiringpi2.wiringPiSetupGpio()

# O PWM via hardware funciona somente na GPIO 18
# (Existe outra posibilidade usando o pino 12 do P1)
SPEAKER = 18
MODE_PWM = 2

wiringpi2.pinMode(SPEAKER, MODE_PWM)
wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS)

# Os tons/notas são criados ao pulsar ao alto-falante usando PWM
# para criar frequências. Cada nota tem uma frequência criada pela
# variação do período de vibração (period of vibration), medido em µs.
# Temos que calcular a largura do pulso (pulse-width) para ser metade
# do período. Basicamente temos que pulsar o alto-falante em HIGH até
# a largura do pulso (pulse-width) e então LOW, da mesma forma. Esses
# pulsos vão criar uma vibração equivalente a frequência desejada.

# Então temos, na ordem:

# 1) Frequência
# freq = A3 = Lá na 3ª oitava
# freq = 440hz
Exemple #34
0
#!/usr/bin/python
import wiringpi2 as gpio
import time

#init the GPIO
#prepare PWM pins
gpio.wiringPiSetupGpio()
gpio.pinMode(12, gpio.GPIO.PWM_OUTPUT)
gpio.pinMode(13, gpio.GPIO.PWM_OUTPUT)
#prepare PWM channels
gpio.pwmSetMode(gpio.GPIO.PWM_MODE_MS)
gpio.pwmSetRange(480)
gpio.pwmSetClock(2)
#prepare direction pins
gpio.pinMode(5, gpio.GPIO.OUTPUT)
gpio.pinMode(6, gpio.GPIO.OUTPUT)


#movements
def straight_fw(speed):
    gpio.digitalWrite(5, 1)
    gpio.digitalWrite(6, 1)
    gpio.pwmWrite(12, speed)
    gpio.pwmWrite(13, speed)


def straight_bw(speed):
    gpio.digitalWrite(5, 0)
    gpio.digitalWrite(6, 0)
    gpio.pwmWrite(12, speed)
    gpio.pwmWrite(13, speed)
Exemple #35
0
import wiringpi2 as wiringpi  
import time

wiringpi.pwmSetMode(0) # PWM_MODE_MS = 0

wiringpi.wiringPiSetupGpio()  

wiringpi.pinMode(18, 2)      # pwm only works on GPIO port 18  

wiringpi.pwmSetClock(6)  # this parameters correspond to 25kHz
wiringpi.pwmSetRange(128)

wiringpi.pwmWrite(18, 0)   # minimum RPM
time.sleep(1)
wiringpi.pwmWrite(18, 128)  # maximum RPM
time.sleep(1)

wiringpi.pwmWrite(18, 0)
Exemple #36
0
 def setPwmMode(self, pwmMode):
     self.pwmMode = pwmMode
     wiringpi.pwmSetMode(pwmMode)
Exemple #37
0
 def end(self):
     wiringpi2.pinMode(self.SPEAKER, 0)
     wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_BAL)
Exemple #38
0
 
midiOutput = pygame.midi.Output(port)
midiOutput.set_instrument(instrument)
 
def getServoDutyForWebIOPi(val):
    val_min = 0.0
    val_max = 1.0
    servo_min = 48
    servo_max = 90

    duty = int((servo_max-servo_min)*(val-val_min)/(val_max-val_min) + servo_min)
    return duty

wiringpi.wiringPiSetupGpio() # GPIO名で番号指定
wiringpi.pinMode(CAMERA_SERVO, wiringpi.GPIO.PWM_OUTPUT)
wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS) # 周波数固定
wiringpi.pwmSetClock(375) # 50 Hz
wiringpi.pwmWrite(CAMERA_SERVO, getServoDutyForWebIOPi(0.5))


# デバッグ出力を有効に
webiopi.setDebug()

# GPIOライブラリの取得
GPIO = webiopi.GPIO

# WebIOPiの起動時に呼ばれる関数
def setup():
    webiopi.debug("Script with macros - Setup")
    # GPIOのセットアップ
    GPIO.setFunction(PWM1, GPIO.PWM)
Exemple #39
0
import wiringpi2

pin_step = 1 # GPIO1, BCM pin 18 (labeled on pi plate 18)
pin_dir = 6 # GPIO6, BCM pin 25 (labeled on pi plate 25)
pin_statusled = 3 # GPI3, BCM pin 22

wiringpi2.wiringPiSetup()

wiringpi2.pinMode(pin_dir, wiringpi2.GPIO.OUTPUT)
wiringpi2.pinMode(pin_step, wiringpi2.GPIO.PWM_OUTPUT)
wiringpi2.pinMode(pin_statusled, wiringpi2.GPIO.OUTPUT)

i2c = wiringpi2.I2C()


wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_MS) # mark/space i.e. run of 1s followed by run of 0s
# the base clock is 19.2MHz and this is a divider
pwm_base = 19.2*1000000
pwm_divider = 16 # 1.2 MHz
wiringpi2.pwmSetClock(pwm_divider) 
# the range is 0-1024 which is another divider.  so with a 1.2MHz clock we can go as low as 1172Hz

def set_motor(hz, direction):
    wiringpi2.digitalWrite(pin_dir, direction)
    
    if hz == 0:
        wiringpi2.pwmWrite(pin_step, 0)
        return
    # if hz is 2000 (60 RPM) we want
    # x = 1200000/2000 = 600
    r = int((pwm_base/pwm_divider)/hz)
Exemple #40
0
import wiringpi2 as GPIO
import time

r = 200;
div = 100;
outPin = 1;

GPIO.wiringPiSetup()
GPIO.pinMode(outPin,2)
GPIO.pwmSetMode(0)
GPIO.pwmSetClock(div)
GPIO.pwmSetRange(r)

for duty in range(r,0,-1):
    GPIO.pwmWrite(1,duty)
    if not duty%20:
        print str(int(float(duty)/float(r)*100)) + "%"
    time.sleep(0.01)

for duty in range(0,r+1):
    GPIO.pwmWrite(1,duty)
    if not duty%20:
        print str(int(float(duty)/float(r)*100)) + "%"
    time.sleep(0.01)
Exemple #41
0
lookspeed = 100
pan = 72
tilt = 72
minPan = 28
maxPan = 120
minTilt = 25
maxTilt = 105

tiltPin = 18
panPin = 13
wiringpi.wiringPiSetupGpio()

# setup servo pwm pins
# 18 = tilt, 13 = pan
wiringpi.pinMode(tiltPin,2)
wiringpi.pwmSetMode(0)
wiringpi.pwmSetClock(400)
wiringpi.pwmSetRange(1024)
wiringpi.pwmWrite(tiltPin,0)

wiringpi.pinMode(panPin,2)
wiringpi.pwmSetMode(0)
wiringpi.pwmSetClock(400)
wiringpi.pwmSetRange(1024)
wiringpi.pwmWrite(panPin,0)


print "testtest"
#wiringpi.pwmWrite(tiltPin,100)
#sleep(1)
#wiringpi.pwmWrite(tiltPin,30)
        f.write(str(time.ctime()) + "\n")
        check = 0
        #
        speedPrev = 0
        newTrack = 0
        goalComponentPrev = 0
        listPosition = [LatLon(0, 0)]
        #
        GPIO.setmode(GPIO.BCM)
        GPIO.setup(LED_RED, GPIO.OUT)
        GPIO.setup(LED_GREEN, GPIO.OUT)
        GPIO.setup(LED_BLUE, GPIO.OUT)
        pi.wiringPiSetupGpio()
        pi.pinMode(SAIL_SERVO_PIN, 2)
        pi.pinMode(RUDDER_SERVO_PIN, 2)
        pi.pwmSetMode(0)
        pi.pwmSetRange(1024)
        pi.pwmSetClock(375)
        #

        sailValue = (SAIL_FULLCLOSE + SAIL_FULLOPEN) / 2
        if (SAIL_FULLCLOSE < 35 or SAIL_FULLOPEN > 55
                or SAIL_FULLCLOSE > SAIL_FULLOPEN):
            exit()
        sailCntl = SailController(sailValue)

        #
        time.sleep(30)
        #
        rudderValue = RUDDER_CENTER
        if (rudderValue < 40 or rudderValue > 76 or RUDDER_FULLRIGHT < 40
Exemple #43
0
GPIO.setmode(GPIO.BCM)
# ピンの名前を変数として定義
SPICLK = 11
SPIMOSI = 10
SPIMISO = 9
SPICS = 8
# SPI通信用の入出力を定義
GPIO.setup(SPICLK, GPIO.OUT)
GPIO.setup(SPIMOSI, GPIO.OUT)
GPIO.setup(SPIMISO, GPIO.IN)
GPIO.setup(SPICS, GPIO.OUT)

wiringpi.wiringPiSetupGpio() # GPIO名で番号を指定する
wiringpi.pinMode(18, wiringpi.GPIO.PWM_OUTPUT) # PWM出力を指定
wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS) # 周波数を固定するための設定
wiringpi.pwmSetClock(375) # 50 Hz。ここには 18750/(周波数) の計算値に近い整数を入れる
# PWMのピン番号18とデフォルトのパルス幅をデューティ100%を1024として指定。
# ここでは6.75%に対応する69を指定
wiringpi.pwmWrite(18, 69) 

adc_pin0 = 0

try:
    while True:
        inputVal0 = readadc(adc_pin0, SPICLK, SPIMOSI, SPIMISO, SPICS)
        duty = servo_duty_hwpwm(inputVal0)
        wiringpi.pwmWrite(18, duty)
        sleep(0.2)

except KeyboardInterrupt:
Exemple #44
0
 def end(self):
     wiringpi2.pinMode(self.SPEAKER, 0)
     wiringpi2.pwmSetMode(wiringpi2.GPIO.PWM_MODE_BAL)
Exemple #45
0
FRONT_LIGHT_PIN = 2
BACK_LIGHT_PIN = 3

# IO Modes on Raspberry
OUTPUT = 1
INPUT = 0

print "[..] ", "Init Wiring Pi Lib"
wiringpi2.wiringPiSetup()

print "[..] ", "Init Servos"

throttle = Servo(THROTTLE_PIN)
steering = Servo(STEERING_PIN)

wiringpi2.pwmSetMode(PWM_MODE_MS)

print "[..] ", "Init LEDs"

frontLed = LED(FRONT_LIGHT_PIN)
backLed = LED(BACK_LIGHT_PIN)


### Open a Socket
s = socket.socket()
print "[..] New Socket on localhost:5556"
host = ''   # Get local machine name
port = 5556 # Reserve a port for your service.

 
### Bind the Socket
Exemple #46
0
from twisted.internet.protocol import Protocol, Factory
from twisted.internet import reactor
import RPi.GPIO as GPIO
import wiringpi2 as wiringpi
import time

wiringpi.wiringPiSetupGpio()
wiringpi.pinMode(18, wiringpi.GPIO.PWM_OUTPUT)
wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS)
wiringpi.pwmSetClock(400)
wiringpi.pwmSetRange(1024)

# 速度の調整
duty = 3
unduty = -3
set_time = 0.01


class RaspberryLight(Protocol):
    def connectionMade(self):
        self.factory.clients.append(self)

    def connectionLost(self, reason):
        self.factory.clients.remove(self)

    def dataReceived(self, data):
        if (data == "start"):
            print "start"
            # 回転角の調整
            for deg in range(0, 171, duty):
                wiringpi.pwmWrite(18, deg / 2 + 910)
import os
app = Flask(__name__)

# Mise en route de WiringPi
wiringpi2.wiringPiSetup()

# Initialisation du GPIO
wiringpi2.pinMode(1, 2)  # PWM

wiringpi2.pinMode(2, 1)  # Premier moteur
wiringpi2.pinMode(3, 1)

wiringpi2.pinMode(4, 1)  # Deuxieme moteur
wiringpi2.pinMode(5, 1)

wiringpi2.pwmSetMode(0)  # Mode PWM


@app.route("/")
def hello():
	return render_template('index.html', cpuUsage=psutil.cpu_percent(interval=None), cpuTemp=int(float(getCPUtemperature())), rpiversion=GPIO.RPI_REVISION)
	
	
@app.route("/alive")
def alive():
    return "alive"


@app.route("/direction/Gauche")
def direction_gauche():
    wiringpi2.digitalWrite(4, 0)
Exemple #48
0
GPIO.setmode(GPIO.BCM)
# ピンの名前を変数として定義
SPICLK = 11
SPIMOSI = 10
SPIMISO = 9
SPICS = 8
# SPI通信用の入出力を定義
GPIO.setup(SPICLK, GPIO.OUT)
GPIO.setup(SPIMOSI, GPIO.OUT)
GPIO.setup(SPIMISO, GPIO.IN)
GPIO.setup(SPICS, GPIO.OUT)

wiringpi.wiringPiSetupGpio()  # GPIO名で番号を指定する
wiringpi.pinMode(18, wiringpi.GPIO.PWM_OUTPUT)  # PWM出力を指定
wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS)  # 周波数を固定するための設定
wiringpi.pwmSetClock(375)  # 50 Hz。ここには 18750/(周波数) の計算値に近い整数を入れる
# PWMのピン番号18とデフォルトのパルス幅をデューティ100%を1024として指定。
# ここでは6.75%に対応する69を指定
wiringpi.pwmWrite(18, 69)

adc_pin0 = 0

try:
    while True:
        inputVal0 = readadc(adc_pin0, SPICLK, SPIMOSI, SPIMISO, SPICS)
        duty = servo_duty_hwpwm(inputVal0)
        wiringpi.pwmWrite(18, duty)
        sleep(0.2)

except KeyboardInterrupt:
Exemple #49
0
pwm_range = 1024

dt_min = 125
dt_max = 175

dt_horizontal = 150
dt_vertical = 150

# changing PWM

verticalPWM = 0
verticalPWMSpeed = 0.5

# enable PWM0
wiringpi.pinMode(pwm_pin_horizontal, 2)
wiringpi.pwmSetMode(0)
wiringpi.pwmSetClock(pwm_clock)
wiringpi.pwmSetRange(pwm_range)

# enable PWM1
wiringpi.pinMode(pwm_pin_vertical, 2)
wiringpi.pwmSetMode(0)
wiringpi.pwmSetClock(pwm_clock)
wiringpi.pwmSetRange(pwm_range)

#led
faceFoundPin = 5
wiringpi.pinMode(faceFoundPin, 1)

faceLost = True
faceLostStart = -1