Esempio n. 1
0
File: aio.py Progetto: walln3r/home
    def pirSense(self):

        for key in self.unit['pir']:

            pin = self.unit['pir'][key]['pin']

            Arduino.pinMode(pin, Arduino.INPUT)
            self.unit['pir'][key].update(state=Arduino.digitalRead(pin))
Esempio n. 2
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
Esempio n. 4
0
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
Esempio n. 5
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'
"""
Spaceship Interface 
A Python/nanpy port of the SpaceshipInterface Sketch from the Arduino Starter Kit ( http://arduino.cc/starterKit)
"""
__version__ = '1.0'
__author__ = 'mc7h'
__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
#!/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)

Esempio n. 8
0
def startArduino(outs):
    for i in range(len(outs)):
        Arduino.pinMode(outs[i], Arduino.OUTPUT)
        Arduino.digitalWrite(outs[i], 0)
"""
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)
#!/usr/bin/env python

# Author: Andrea Stagi <*****@*****.**>
# Description: a lamp that turns a light on and off when you touch a piece of conductive material
# Dependencies: nanpy > 6.0

from nanpy import (Arduino, CapacitiveSensor)

capSensor = CapacitiveSensor(4,2)
threshold = 1000
ledPin = 12;

Arduino.pinMode(ledPin, Arduino.OUTPUT)

while True:
    sensorValue = capSensor.capacitiveSensor(30)
     
    print("Capacitive sensor value: %d" % sensorValue)

    if sensorValue > threshold:
        Arduino.digitalWrite(ledPin, Arduino.HIGH)
    else:
        Arduino.digitalWrite(ledPin, Arduino.LOW)
       
    Arduino.delay(10)
Esempio n. 11
0
from nanpy import Arduino
from time import sleep

# set LED pin numbers
redPin = 3
greenPin = 6
bluePin = 9

# set pot pin numbers
pot_r_Pin = 0
pot_g_Pin = 3
pot_b_Pin = 5

#set three coloured pins as outputs
for pins in (redPin, greenPin, bluePin):
	Arduino.pinMode(pins, Arduino.OUTPUT)

# set pot pins as inputs
for pins in (pot_r_Pin, pot_g_Pin, pot_b_Pin):
	Arduino.pinMode(pins, Arduino.INPUT)

# prints values to the terminal when True
debug = False

def get_pots():
	"""
	Grab a reading from each of the pot pins and 
	send it to a tuple to be read by the colour mixer
	"""
	r = Arduino.analogRead(pot_r_Pin) / 4
	Arduino.delay(1)
#!/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)
Esempio n. 13
0
    #{
        #'x': [], 'y': [], 'type': 'scatter',
        #'stream': {
            #'token': plotly_user_config['plotly_streaming_tokens'][0],
            #axpoints': 200
        #}
    #}], filename='aRi Analytics Demonstration')

#print "View your streaming graph here: ", url

LED =10                        # LED on Arduino Pin 10 (with PWM)
# for measuring temperature
analogPort = 0
powervoltage = 5.
tempC = []
Arduino.pinMode(LED, Arduino.OUTPUT)
#Arduino.pinMode(analogPort, Arduino.INPUT)

# function makeFig()

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()		
from flask import Flask, render_template, request
from nanpy import Arduino as A
from nanpy import (SPI, Wire, L3G, Servo)
import os
tmpl_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), '')

app = Flask(__name__, template_folder=tmpl_dir, static_url_path='')
import datetime

red = 8
green = 11
A.pinMode(red, A.OUTPUT)
A.pinMode(green, A.OUTPUT)

#####################
####### Gyro ########
#####################

L3G gyro
gyroSum = 0
gyroOffset = 0.0
Xval = 0

# gyro calibration variables
gyromin = -25000
gyromax = 25000

# gyro smoothing variables
i = 0
gyroaverage  = 0.
numReadings = 5
Esempio n. 15
0
@app.route('/lights', methods=['POST'])
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


@app.route('/beep', methods=['POST'])
def beep():
    duration = request.json['duration']
    tone = Tone(boardconfig.beep_pin)
    tone.play(Tone.NOTE_FS1, duration)
    return jsonify({'status': 'success'}), 200


if __name__ == "__main__":
    serial_manager.open(boardconfig.serialport)
    Arduino.pinMode(boardconfig.motor1_cp1, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor1_cp2, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor1_ep, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor2_cp1, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor2_cp2, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor2_ep, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.lights_pin, Arduino.OUTPUT)
    app.run()
Esempio n. 16
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)
Esempio n. 17
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)

Esempio n. 18
0
import os
from nanpy import Arduino, Lcd

Arduino.pinMode(14, input)

# Setup the LCD pins for the Keypad Shield
lcd = Lcd([8,9,7,6,5,4],[16,2])

max_trax = 6                                    

def getKey():                                    # Function to Translate the analogRead values from the Keys to a Command
   val = Arduino.analogRead(14)
   if val == 1023:
      return "NONE"
   elif val < 100:
      return "RIGHT"
   elif val < 150:
      return "UP"
   elif val < 330:
      return "DOWN"
   elif val < 510:
      return "LEFT"
   elif val < 750:
      return "SEL"
   else:
      return "KBD_FAULT"


def getTrack():
   L= [S.strip('\n') for S in os.popen('mpc').readlines()]    # Get the Track info from the stdout of the mpc command
   station = L[0][0:15]                                                         # Pick out the Station and Track info
Esempio n. 19
0
parser = optparse.OptionParser()
parser.add_option('-s', '--steps', type='int', action='store', dest='steps', help='motor steps', default=200)
options, args = parser.parse_args()

from nanpy import Stepper
from nanpy import Arduino

# 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
Esempio n. 20
0
from nanpy import Arduino
from time import sleep

# set LED pin numbers
redPin = 3
greenPin = 6
bluePin = 9

# set pot pin numbers
pot_r_Pin = 0
pot_g_Pin = 3
pot_b_Pin = 5

#set three coloured pins as outputs
for pins in (redPin, greenPin, bluePin):
	Arduino.pinMode(pins, Arduino.OUTPUT)

# set pot pins as inputs
for pins in (pot_r_Pin, pot_g_Pin, pot_b_Pin):
	Arduino.pinMode(pins, Arduino.INPUT)

# prints values to the terminal when True
debug = False

def get_pots():
	"""
	Grab a reading from each of the pot pins and 
	send it to a tuple to be read by the colour mixer
	"""
	r = Arduino.analogRead(pot_r_Pin) / 4
	Arduino.delay(1)
Esempio n. 21
0
    pwmPin6 = board.get_pin("d:7:p")
    pwmPin7 = board.get_pin("d:8:p")
    pwmPin8 = board.get_pin("d:9:p")
else:
    boardPin = 13
    pwmPin1 = 2
    pwmPin2 = 3
    pwmPin3 = 4
    pwmPin4 = 5
    pwmPin5 = 6
    pwmPin6 = 7
    pwmPin7 = 8
    pwmPin8 = 9

if USE_NANPY:
    Arduino.pinMode(boardPin, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin1, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin2, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin3, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin4, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin5, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin6, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin7, Arduino.OUTPUT)
    Arduino.pinMode(pwmPin8, Arduino.OUTPUT)
    # my version of firmata sets the pwm in the firmware
    set_timers()

targetpin = boardPin
PWM_Levelout = 0
outpin = 0
writeVAR = 0
Esempio n. 22
0
#!/usr/bin/env python
# Avoider sketch for Nanpy-controlled frindo bot
# Russell Barnes - 02 Oct 2013

from nanpy import Arduino
from nanpy import Servo
from time import sleep

from modules.motorfuncs import *
from modules.sensorfuncs import *
from modules.servofuncs import *
from modules.helperfuncs import *

lock = 5

Arduino.pinMode(lock, Arduino.INPUT)

def debug():
    """
    If lock switch is in the locked position stop motors and give sensor feedback instead
    """
    stop()
    reading = read_sensors()
    Arduino.delay(5)
    if reading[0] > frontTrigger:
        print "Front bump detected!"
    elif reading[1] > sideTrigger:
        print "Right bump detected!"
    elif reading[2] > sideTrigger:
        print "Left bump detected!"
    elif reading[3] > rearTrigger:
Esempio n. 23
0
#!/usr/bin/env python
# LED with 560 Ohm resistor on Pin 10 to GND
# Tony Goodhew - 10 May 2013
from nanpy import Arduino
from nanpy import serial_manager
serial_manager.connect('/dev/ttyACM0')        # serial connection to Arduino
from time import sleep
import NGSIClient

pins = [0, 1]

for pin in pins:
  Arduino.pinMode(pin, Arduino.INPUT)

while 4 < 5:
  temperaturesList = []

  for pin in pins:
    print "Reading"
    value = Arduino.analogRead(pin)
    degreesC = (value * 0.004882814)*100
    print "The voltage in pin " + str(pin) + " is "  + str(degreesC)
    temperaturesList.append(degreesC)

  NGSIClient.createContext("Cuba", "CubaDani", NGSIClient.createMeasureArray("centrigrade", "temperature", temperaturesList))
  sleep(5)

print "Finished reading"

Esempio n. 24
0
from nanpy import Arduino
from nanpy import SerialManager
from time import sleep
from Tkinter import *
from tkColorChooser import askcolor

#serial_manager.connect('/dev/ttyS0')        # serial connection to Arduino
connection = SerialManager()
a = Arduino(connection=connection)
a.pinMode(5, a.OUTPUT)
a.pinMode(6, a.OUTPUT)
a.pinMode(3, a.OUTPUT)

RLED = 5                        # LED on Arduino Pin 10 (with PWM)
GLED = 3
BLED = 6

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"
Esempio n. 25
0
import os
from nanpy import Arduino, Lcd

# Initialize buttons and states
buttonPin = 7
buttonPin2 = 8
buttonState = 0
buttonState2 = 0

# Activate buttons
Arduino.pinMode(buttonPin, input)
Arduino.pinMode(buttonPin2, input)

# Initialize LCD
lcd = Lcd([12, 11, 5, 4, 3, 2], [16, 2])

# Maximum number of stations held in the mpc list
max_trax = 4


# Print station info to LCD
def getTrack():
    L = [S.strip('\n') for S in os.popen('mpc').readlines()]
    station = L[0][0:15]
    track = L[0][-16:-1]
    lcd.printString(16 * " ", 0, 0)
    lcd.printString(station, 0, 0)
    lcd.printString(16 * " ", 0, 1)
    lcd.printString(track, 0, 1)
    print(L)
    print(station)
from datetime import datetime
from subprocess import *
from time import sleep, strftime
from Queue import Queue
from threading import Thread
import os
from nanpy import Arduino, Lcd

Arduino.pinMode(14, input)

lcd = Lcd([8, 9, 4, 5, 6, 7],
          [16, 2])  # Setup the LCD pins for the Sainsmart Shield
lcd.printString("Jess's Web Radio", 0, 0)
lcd.printString("Loading" + "." * 3, 0, 1)
sleep(5)
max_trax = 74
x = 1
loop_menu = 1
loop_radio = 1


def display_ipaddr():
    show_wlan0 = "ip addr show wlan0 | cut -d/ -f1 | awk '/inet/ {printf \"w%15.15s\", $2}'"
    show_eth0 = "ip addr show eth0  | cut -d/ -f1 | awk '/inet/ {printf \"e%15.15s\", $2}'"
    ipaddr = run_cmd(show_eth0)
    if ipaddr == "":
        ipaddr = run_cmd(show_wlan0)
    lcd.printString('IP Address:', 0, 0)
    lcd.printString(ipaddr, 0, 1)
    sleep(2)
Esempio n. 27
0
    return jsonify({ 'status' : 'success' }), 200

@app.route('/lights', methods=['POST'])
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

@app.route('/beep', methods=['POST'])
def beep():
    duration = request.json['duration']
    tone = Tone(boardconfig.beep_pin)
    tone.play(Tone.NOTE_FS1 , duration)
    return jsonify({ 'status' : 'success' }), 200

if __name__ == "__main__":
    serial_manager.open(boardconfig.serialport)
    Arduino.pinMode(boardconfig.motor1_cp1, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor1_cp2, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor1_ep, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor2_cp1, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor2_cp2, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.motor2_ep, Arduino.OUTPUT)
    Arduino.pinMode(boardconfig.lights_pin, Arduino.OUTPUT)
    app.run()