Exemple #1
0
def go(vel):
    """
    Start the motors and keep them running until told otherwise
    """
    Arduino.digitalWrite(dirA, Arduino.HIGH)
    Arduino.digitalWrite(dirB, Arduino.HIGH)
    Arduino.analogWrite(speedA, vel)
    Arduino.analogWrite(speedB, vel)
Exemple #2
0
def close_pins():
    """
    Close all motor pins to quit cleanly upon end or exception
    """
    Arduino.analogWrite(speedA, Arduino.LOW)
    Arduino.analogWrite(speedB, Arduino.LOW)
    Arduino.digitalWrite(dirA, Arduino.LOW)
    Arduino.digitalWrite(dirB, Arduino.LOW)
Exemple #3
0
def forward(dist, vel):
    """
    Move forward for dist (time) at vel (motor speed)
    """
    Arduino.digitalWrite(dirA, Arduino.HIGH)
    Arduino.digitalWrite(dirB, Arduino.HIGH)
    Arduino.analogWrite(speedA, vel)
    Arduino.analogWrite(speedB, vel)
    Arduino.delay(dist)
def lights():
    status = request.json['status']
    if status == 'on':
        Arduino.digitalWrite(boardconfig.lights_pin, 1)
    elif status == 'off':
        Arduino.digitalWrite(boardconfig.lights_pin, 0)
    else:
        return jsonify({ 'error' : 'use status on or off' }), 400
    return jsonify({ 'status' : 'success' }), 200
Exemple #5
0
def go_forward():
    print "executing go_forward"
    speed = 255
    direction = 0
    Arduino.digitalWrite(DIR_B_PIN, direction)
    Arduino.analogWrite(SPEED_B_PIN, speed)
    Arduino.digitalWrite(DIR_A_PIN, direction)
    Arduino.analogWrite(SPEED_A_PIN, speed)
    Arduino.analogWrite(LED_PIN_G, 155)
Exemple #6
0
def turn_left(angle, vel):
    """
    Turns to the left according to angle (delay)
    """
    Arduino.digitalWrite(dirA, Arduino.HIGH)
    Arduino.digitalWrite(dirB, Arduino.LOW)
    Arduino.analogWrite(speedA, vel)
    Arduino.analogWrite(speedB, Arduino.LOW)
    Arduino.delay(angle)
Exemple #7
0
def lights():
    status = request.json['status']
    if status == 'on':
        Arduino.digitalWrite(boardconfig.lights_pin, 1)
    elif status == 'off':
        Arduino.digitalWrite(boardconfig.lights_pin, 0)
    else:
        return jsonify({'error': 'use status on or off'}), 400
    return jsonify({'status': 'success'}), 200
Exemple #8
0
def reverse(dist, vel):
    """
    Move backwards for dist (time) at vel (motor speed)
    """
    Arduino.digitalWrite(dirA, Arduino.LOW)
    Arduino.digitalWrite(dirB, Arduino.LOW)
    Arduino.analogWrite(speedA, vel)
    Arduino.analogWrite(speedB, vel)
    Arduino.delay(dist)
Exemple #9
0
def taha(N):
    Arduino.pinMode(13, Arduino.OUTPUT)
    while True:
        Arduino.digitalWrite(13, Arduino.HIGH)
        time.sleep(float(N))
        Arduino.digitalWrite(13, Arduino.LOW)
        time.sleep(float(N))
        lcd.setCursor(0, 1)
        lcd.printString(N)
        print N
def taha(N):
	Arduino.pinMode(13, Arduino.OUTPUT)
	while True:
		Arduino.digitalWrite(13, Arduino.HIGH)
		time.sleep(float(N))
		Arduino.digitalWrite(13, Arduino.LOW)
		time.sleep(float(N))
		lcd.setCursor(0, 1)
		lcd.printString(N)
		print N
Exemple #11
0
def rot_ccw(angle, vel):
    """
    Spins to the left according to angle (delay),
    then stops the motors
    """
    Arduino.digitalWrite(dirA, Arduino.HIGH)
    Arduino.digitalWrite(dirB, Arduino.LOW)
    Arduino.analogWrite(speedA, vel)
    Arduino.analogWrite(speedB, vel)
    Arduino.delay(angle)
Exemple #12
0
def go_right():
    print "executing go_right"
    speed = 255
    direction_a = 1
    direction_b = 0
    Arduino.digitalWrite(DIR_B_PIN, direction_b)
    Arduino.analogWrite(SPEED_B_PIN, speed)
    Arduino.digitalWrite(DIR_A_PIN, direction_a)
    Arduino.analogWrite(SPEED_A_PIN, speed)
    Arduino.analogWrite(LED_PIN_R, 0)
    Arduino.analogWrite(LED_PIN_G, 0)
    Arduino.analogWrite(LED_PIN_B, 155)
def digitalpin(pin_number):
    if request.method == 'GET':
        Arduino.pinMode(pin_number, Arduino.INPUT)
        data = {
            'value' : Arduino.digitalRead(pin_number)
        }
        resp = Response(json.dumps(data), status=200, mimetype='application/json')
        return resp
    else:
        Arduino.pinMode(pin_number, Arduino.OUTPUT)
        Arduino.digitalWrite(pin_number, request.json['value'])
        resp = Response("", status=200, mimetype='application/json')
        return resp
Exemple #14
0
def send_updates_to_arduino(batch):
    if batch.heat:
        Arduino.digitalWrite(ARDUINO_HEAT_PIN, Arduino.HIGH)
    else:
        Arduino.digitalWrite(ARDUINO_HEAT_PIN, Arduino.LOW)

    if batch.cool:
        Arduino.digitalWrite(ARDUINO_COOL_PIN, Arduino.HIGH)
    else:
        Arduino.digitalWrite(ARDUINO_COOL_PIN, Arduino.LOW)
def close_pins():
	"""
	Close pins to quit cleanly (doesn't work with a 'for
	loop' despite the pins happily initialising that way!)
	"""
	Arduino.digitalWrite(redPin,Arduino.LOW)
	Arduino.digitalWrite(greenPin,Arduino.LOW)
	Arduino.digitalWrite(bluePin,Arduino.LOW)
Exemple #16
0
def close_pins():
	"""
	Close pins to quit cleanly (doesn't work with a 'for
	loop' despite the pins happily initialising that way!)
	"""
	Arduino.digitalWrite(redPin,Arduino.LOW)
	Arduino.digitalWrite(greenPin,Arduino.LOW)
	Arduino.digitalWrite(bluePin,Arduino.LOW)
Exemple #17
0
def move():
    movetype = request.json['type']
    duration = request.json['duration']

    if movetype == 'left':
        Arduino.digitalWrite(boardconfig.motor1_cp1, 0)
        Arduino.digitalWrite(boardconfig.motor1_cp2, 1)
        Arduino.analogWrite(boardconfig.motor1_ep, boardconfig.motor_speed)
    elif movetype == 'right':
        Arduino.digitalWrite(boardconfig.motor1_cp1, 1)
        Arduino.digitalWrite(boardconfig.motor1_cp2, 0)
        Arduino.analogWrite(boardconfig.motor1_ep, boardconfig.motor_speed)
    elif movetype == 'up':
        Arduino.digitalWrite(boardconfig.motor2_cp1, 0)
        Arduino.digitalWrite(boardconfig.motor2_cp2, 1)
        Arduino.analogWrite(boardconfig.motor2_ep, boardconfig.motor_speed)
    elif movetype == 'down':
        Arduino.digitalWrite(boardconfig.motor2_cp1, 1)
        Arduino.digitalWrite(boardconfig.motor2_cp2, 0)
        Arduino.analogWrite(boardconfig.motor2_ep, boardconfig.motor_speed)
    else:
        return jsonify({ 'error' : 'use type up, down, left or right' }), 400
    time.sleep(duration/1000)

    Arduino.analogWrite(boardconfig.motor2_ep, 0)
    Arduino.analogWrite(boardconfig.motor1_ep, 0)

    return jsonify({ 'status' : 'success' }), 200
def setBgColor():
    (triple, hexstr) = askcolor()
    if hexstr:
        print hexstr
        print (triple[0], " ", triple[1], " ", triple[2])
        a.analogWrite(RLED, triple[0])
        a.analogWrite(GLED, triple[1])
        a.analogWrite(BLED, triple[2])
        push.config(bg=hexstr)


print"Starting"
print"5 blinks"

a.digitalWrite(BLED,a.LOW)
a.digitalWrite(GLED,a.LOW)

for i in range(0,5):
    Arduino.digitalWrite(RLED, Arduino.HIGH)
    sleep(0.2)
    Arduino.digitalWrite(RLED, Arduino.LOW)
    sleep(0.2)

print"Changing brightness of LED"
bright = 128                           # Mid brightness
a.analogWrite(RLED, bright)
#a.digitalWrite(LED,a.HIGH)          # Turn on LED

for i in range(0,50):
    bright = bright + 8
#!/usr/bin/env python

# Author: Scott Ellis
# Basic Digital Read
# turns on and off a light emitting diode(LED) connected to digital  
# pin 13, when pressing a pushbutton attached to pin 5. 
# Dependencies: nanpy 0.7

from nanpy import Arduino

sensorButton = Arduino.digitalRead(5)
Arduino.pinMode(sensorButton, Arduino.INPUT)

ledPin = 13; 
Arduino.pinMode(ledPin, Arduino.OUTPUT)

while True:
    sensorButton = Arduino.digitalRead(5)
    print("sensor value: %d" % sensorButton)
    if (sensorButton == True):
        Arduino.digitalWrite(ledPin, Arduino.HIGH)
    else:
        Arduino.digitalWrite(ledPin, Arduino.LOW)
    Arduino.delay(100)
Exemple #20
0
def makeFig():
	plt.ylim(20,80)
	plt.title('Temperature Streaming')
	plt.grid(True)
#	plt.ylable('Temp C')
	plt.plot(tempC, 'ro-',label='Degree C')
	plt.legend(loc='upper left')
#	pyplot.show_bokeh(plt.gcf(), filename="mpltest.html")
#	plotting.session().dumpjson(file="mpltest.json")
        mpld3.show()
#	plt.show()		
print"Starting"
print"5 blinks"
for i in range(0,2):
    Arduino.digitalWrite(LED, Arduino.HIGH)
    sleep(0.5)
    Arduino.digitalWrite(LED, Arduino.LOW)
    sleep(0.5)

print"Changing brightness of LED"
bright = 128                           # Mid brightness
Arduino.analogWrite(LED, bright)
Arduino.digitalWrite(LED,Arduino.HIGH)          # Turn on LED

for i in range(0,200):
    bright = bright + 8
    if (bright > 200):          # LED already full on at this point
        bright = 0          # Minimum power to LED
    Arduino.analogWrite(LED, bright)           # Change PWM setting/brightness
    sleep(0.05)
Exemple #21
0
def move():
    movetype = request.json['type']
    duration = request.json['duration']

    if movetype == 'left':
        Arduino.digitalWrite(boardconfig.motor1_cp1, 0)
        Arduino.digitalWrite(boardconfig.motor1_cp2, 1)
        Arduino.analogWrite(boardconfig.motor1_ep, boardconfig.motor_speed)
    elif movetype == 'right':
        Arduino.digitalWrite(boardconfig.motor1_cp1, 1)
        Arduino.digitalWrite(boardconfig.motor1_cp2, 0)
        Arduino.analogWrite(boardconfig.motor1_ep, boardconfig.motor_speed)
    elif movetype == 'up':
        Arduino.digitalWrite(boardconfig.motor2_cp1, 0)
        Arduino.digitalWrite(boardconfig.motor2_cp2, 1)
        Arduino.analogWrite(boardconfig.motor2_ep, boardconfig.motor_speed)
    elif movetype == 'down':
        Arduino.digitalWrite(boardconfig.motor2_cp1, 1)
        Arduino.digitalWrite(boardconfig.motor2_cp2, 0)
        Arduino.analogWrite(boardconfig.motor2_ep, boardconfig.motor_speed)
    else:
        return jsonify({'error': 'use type up, down, left or right'}), 400
    time.sleep(duration / 1000)

    Arduino.analogWrite(boardconfig.motor2_ep, 0)
    Arduino.analogWrite(boardconfig.motor1_ep, 0)

    return jsonify({'status': 'success'}), 200
#!/usr/bin/env python

# Author: Andrea Stagi <*****@*****.**>
# Description: keeps your led blinking
# Dependencies: None

from nanpy import Arduino
sys.path.append('/home/pi/Desktop/nanpy-0.8/firmware/ArduinoClass.h')

Arduino.pinMode(4, Arduino.OUTPUT)

for i in range(10000):
    Arduino.digitalWrite(4, (i + 1) % 2)
    Arduino.delay(1000)

__license__ = 'None'

from nanpy import Arduino as A
switchstate = 0

# SETUP:
A.pinMode(3, A.OUTPUT)
A.pinMode(4, A.OUTPUT)
A.pinMode(5, A.OUTPUT)

A.pinMode(2, A.INPUT)

# LOOP:
while True:
    switchState = A.digitalRead(2)
    if switchState == A.LOW:
        A.digitalWrite(3, A.HIGH) # turn the green LED on pin 3 on
        A.digitalWrite(4, A.LOW)  # turn the red LED on pin 4 off
        A.digitalWrite(5, A.LOW)  # turn the red LED on pin 5 off
    else:
        A.digitalWrite(3, A.LOW);  # turn the green LED on pin 3 off
        A.digitalWrite(4, A.LOW);  # turn the red LED on pin 4 off
        A.digitalWrite(5, A.HIGH); # turn the red LED on pin 5 on
        
        # wait for a quarter second before changing the light
        A.delay(250);
        A.digitalWrite(4, A.HIGH); #// turn the red LED on pin 4 on
        A.digitalWrite(5, A.LOW);  #// turn the red LED on pin 5 off
        
        # wait for a quarter second before changing the light
        A.delay(250);
"""
Love O Meter
A Python/nanpy port of the LoveOMeter Sketch from the Arduino Starter Kit ( http://arduino.cc/starterKit)
"""
__version__ = '1.0'
__author__ = 'mc7h'
__license__ = 'None'

from nanpy import Arduino as A

SENSOR_PIN_A0 = 14 
BASELINE_TEMP = 20.0

# SETUP
A.pinMode(2, A.OUTPUT)
A.digitalWrite(2, A.LOW)
A.pinMode(3, A.OUTPUT)
A.digitalWrite(3, A.LOW)
A.pinMode(4, A.OUTPUT)
A.digitalWrite(4, A.LOW)

# LOOP
while True:
    sensorVal = A.analogRead(SENSOR_PIN_A0)
    voltage = (sensorVal / 1024.0) * 5.0
    temperature = (voltage - 0.5) * 100
    print("Sensor value: " + str(sensorVal) + ", Volts: " + str(voltage)  +", Degrees C: " + str(temperature) + ".")
    
    # if the current temperature is lower than the baseline turn off all LEDs
    if temperature < BASELINE_TEMP:
        A.digitalWrite(2, A.LOW)
Exemple #25
0
def startArduino(outs):
    for i in range(len(outs)):
        Arduino.pinMode(outs[i], Arduino.OUTPUT)
        Arduino.digitalWrite(outs[i], 0)
Exemple #26
0
 def rw(self, **data):
     print data
     Arduino.digitalWrite(self.cp1, 1)
     Arduino.digitalWrite(self.cp2, 0)
     Arduino.analogWrite(self.ep, data['speed'])
Exemple #27
0
# Adjust for gravity
steps = options.steps if options.steps > 0 else options.steps + -100
print 'Motor Steps:', steps

# revsteps, pin1, pin2, speed
motor = Stepper(200, 12, 13, 50)

# Setup pins
Arduino.pinMode(3, Arduino.OUTPUT)
Arduino.pinMode(11, Arduino.OUTPUT)
Arduino.pinMode(9, Arduino.OUTPUT)
Arduino.pinMode(8, Arduino.OUTPUT)

# Turn off the brakes
Arduino.digitalWrite(9, Arduino.LOW)
Arduino.digitalWrite(8, Arduino.LOW)

# Turn on pulse width modulation
Arduino.digitalWrite(3, Arduino.HIGH)
Arduino.digitalWrite(11, Arduino.HIGH)

motor.step(steps)

# Turn off pulse width modulation
Arduino.digitalWrite(3, Arduino.LOW)
Arduino.digitalWrite(11, Arduino.LOW)

# Turn on the brakes
Arduino.digitalWrite(9, Arduino.HIGH)
Arduino.digitalWrite(8, Arduino.HIGH)
Exemple #28
0
#!/usr/bin/env python

# Author: Andrea Stagi <*****@*****.**>
# Description: keeps your led blinking
# Dependencies: None

from nanpy import Arduino

Arduino.pinMode(13, Arduino.OUTPUT)

for i in range(10000):
    Arduino.digitalWrite(13, (i + 1) % 2)
    Arduino.delay(10)

Exemple #29
0
from nanpy import Arduino as A

# setup
A.pinMode(1, A.OUTPUT)

while True:
    A.digitalWrite(1, HIGH)
    A.delay(400)
    A.digitalWrite(1, LOW)
    A.delay(400)
Exemple #30
0
def init_mashing(batch):

    # (Re)set defaults for batch
    set_batch_defaults(batch)
    set_variable('active_mashingprocess_batch_id', str(batch.id))

    # Initialize Arduino with Nanpy
    if not settings.ARDUINO_SIMULATION:
        sensor = DallasTemperature(ARDUINO_TEMPERATURE_PIN)
        addr = sensor.getAddress(ARDUINO_TEMPERATURE_PIN)
        Arduino.pinMode(ARDUINO_HEAT_PIN, Arduino.OUTPUT)
        Arduino.pinMode(ARDUINO_COOL_PIN, Arduino.OUTPUT)
        Arduino.pinMode(ARDUINO_STATUS_PIN, Arduino.OUTPUT)
        Arduino.digitalWrite(ARDUINO_HEAT_PIN, Arduino.LOW)
        Arduino.digitalWrite(ARDUINO_COOL_PIN, Arduino.LOW)
        Arduino.digitalWrite(ARDUINO_STATUS_PIN, Arduino.HIGH)
    else:
        # Set initial dummy temperature
        batch.temperature = 20  # Testing purpose only
        batch.save()
        batch = Batch.objects.get(id=batch.id)

    # Run Mashing proces
    while get_variable('active_mashingprocess_batch_id', 'None') == str(batch.id):
        # Measure data
        measured_data = {}
        if settings.ARDUINO_SIMULATION:
            measured_data['temp'] = get_dummy_temperature(batch)
        else:
            sensor.requestTemperatures()
            measured_data['temp'] = sensor.getTempC(addr)

        # Define actions depending on measured data
        batch = process_measured_data(batch.id, measured_data)

        # Send updates to arduino
        if not settings.ARDUINO_SIMULATION:
            send_updates_to_arduino(batch)

        # Send to logging department
        handle_logging(batch)

        # Delay
        sleep(DELAY_BETWEEN_MEASUREMENTS)

    Arduino.digitalWrite(ARDUINO_STATUS_PIN, Arduino.LOW)
    Arduino.digitalWrite(ARDUINO_COOL_PIN, Arduino.LOW)
    Arduino.digitalWrite(ARDUINO_HEAT_PIN, Arduino.LOW)

    return 'Mashing proces ended'