Ejemplo n.º 1
0
 def __init__(self, server, pin_red, pin_green, pin_blue, freq=1000):
     super().__init__(server, 'light-' + str(uid), \
                      self.get_state, self.set_state, \
                      self.get_color, self.set_color)
     self._pin_r = PWM(GPIO(pin_red), freq=freq, duty=0)
     self._pin_g = PWM(GPIO(pin_green), freq=freq, duty=0)
     self._pin_b = PWM(GPIO(pin_blue), freq=freq, duty=0)
Ejemplo n.º 2
0
 def __init__(self, server, pin, freq=1000):
     super().__init__(server, 'light-' + str(uid), \
                      self.get_state, self.set_state, \
                      self.get_level, self.set_level)
     if pin in pwm_pins:
         self.dimmable = True
         self._pin = PWM(GPIO(pin), freq=freq, duty=0)
     else:
         self.dimmable = False
Ejemplo n.º 3
0
    def __init__(self):
        self.spi = machine.SPI(spihost=1,
                               sck=18,
                               miso=19,
                               mosi=21,
                               duplex=False)
        self.dict_cs_pins = (5, 15, 2, 4, 22)
        self.dict_cs_obj = []
        self.arr_data = [[] for _ in range(5)]
        self.arr_data_cnt = [0, 0, 0, 0, 0]
        self.arr_data_first = True

        self.data_temperature = {}
        for i in range(5):
            for j in range(16):
                self.arr_data[i].append(0)

        for num in self.dict_cs_pins:
            self.dict_cs_obj.append(GPIO(num, GPIO.OUT))

        for obj in self.dict_cs_obj:
            obj.value(1)

        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
        self.getAllTemperature()
Ejemplo n.º 4
0
    def __init__(self):
        print("init uDevice")
        self.ID = "1"
        # Номера ус-в
        self.dict_devices = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
                             16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
                             28, 29, 30, 31)
        #self.registrPhoneNumbers = "+380665168235"

        self.ConfigModule = {}
        # default config

        self.registrPhoneNumbers = ["+380688810836", "+380665168235"]

        self.gsmAPN = 'internet'
        self.gsmsocket_ip = '185.41.186.74'
        self.gsmsocket_port = 2021

        self.isDataFromServer = False
        self.isDataToServer = False
        self.datafromserver = bytearray()
        self.datatoserver = bytearray(100)
        self.serversock = socket.socket()
        self.err_thr_read = ERR_NONE

        #Событие из внешнего процесса на подключение к GSM
        self.evConnectGsm = False

        self.uDevice = UART(2, baudrate=9600, rx=16, tx=17, timeout=1000)
        #self.uGSMModule =
        self.count_pol_sec = 0
        self.count_tuggle_pol_sec = 0
        self.en485pin = GPIO(5, GPIO.OUT)
        self.indStateWorkPin = GPIO(12, GPIO.OUT)  # Постоянно моргаем
        self.indStateGPRSPin = GPIO(14, GPIO.OUT)  # Горит когда в режиме GPRS
        self.indStateErrorPin = GPIO(26, GPIO.OUT)  # Моргает когда есть ошибки
        self.indStateModemPin = GPIO(
            27, GPIO.OUT)  # Горит когда есть связь с модемом
        self.indStateRezervPin = GPIO(25, GPIO.OUT)  # Резервный

        self.indStateWorkPin.value(0)
        self.indStateGPRSPin.value(0)
        self.indStateErrorPin.value(0)
        self.indStateModemPin.value(0)
        self.indStateRezervPin.value(0)

        # Для Wavecom
        self.gsm = wavecom()
        self.gsm.cb_exec_server_data = self._analis_server_socket_buff_
        self._send_data_to_server_ = self.gsm.send_data_to_server

        print("Init configuration")

        #f = open('config.json', 'w')

        self.gsm.cmd_CREATE_TCP_CLIENT = {
            'cmd':
            'AT+WIPCREATE=2,1,"%s",%d\r\n' %
            (self.gsmsocket_ip, self.gsmsocket_port),
            'cmd_resp':
            'OK',
            'time_out':
            6000,
            'delay':
            0,
            'skip':
            0
        }

        self.StartThrTimePolSec()

        self.modbus = ModBus()
Ejemplo n.º 5
0
 def __init__(self, server, pin):
     self._pin = GPIO(pin, GPIO.OUT)
     super().__init__(server, 'light-' + str(uid), \
                      self.get_state, self.set_state)
Ejemplo n.º 6
0
 def __init__(self, server, pin):
     MultiLevelSensor.__init__(self, server, 'dht22-' + str(uid), self.read)
     DHT.__init__(self, GPIO(pin))
Ejemplo n.º 7
0
from machine import PWM
from machine import unique_id
from micropython import const
from os import urandom
from onewire import OneWire
from ubinascii import hexlify

from dht import DHT22 as DHT
from machine import Pin as GPIO

I2C_SCL = const(5)
I2C_SDA = const(4)
I2CFREQ = const(100000)
ONEWIRE = const(12)

I2CBus = I2C(scl=GPIO(I2C_SCL), sda=GPIO(I2C_SDA), freq=I2CFREQ)
OneWireBus = OneWire(GPIO(ONEWIRE))
DS18B20Bus = DS18X20(OneWireBus)

mac = int.from_bytes(unique_id(), 'big')
def uid():
    return int.from_bytes(urandom(8), 'big')

#esp8266 nodemcu specific definitions
pwm_pins = [0, 2, 4, 5, 12, 13, 14, 15]

class DS18B20(TemperatureSensor):
    def __init__(self, server, addr):
        self.rom_id = addr
        super().__init__(server, 'ds18b20-' + str(uid), self.read)