Exemple #1
0
 def change_relay(self, state):
     """
     Chage the state of the relay
     :param state: The state expected to the relay
     :return:
     """
     self.relay.write(state)
     AddressableLedController().change_relay_state(state)
Exemple #2
0
def signal_handler(signal, frame):
    """
    Invoked when Ctrl+C is pressed
    :param signal:
    :param frame:
    :return:
    """
    print('You pressed Ctrl+C!')
    x.isrExit()
    mDNS.stop_advertise()
    AddressableLedController().stop_movement()
    sys.exit(0)
Exemple #3
0
 def __init__(self, voltage):
     """
     Construtctor
     :param voltage:
     """
     super().__init__(voltage)
     self.adc = Adc()
     self.voltage = voltage
     self.initialize_adc()
     self.relay = mraa.Gpio(37)
     self.relay.dir(mraa.DIR_OUT)
     self.ledControl = AddressableLedController()
Exemple #4
0
def background_thread():
    """
    Background thread that handle all the code that is not related with the communication with the broker
    Like receiveing the hearbeats, reading and calculating power, and sending it to server
    :return:
    """
    register_interrupt()
    signal.signal(signal.SIGINT, signal_handler)
    read_module = EdisonRead(socket_control)
    power_consumption_module = EdisonPowerConsumption(socket_control)
    url1 = "http://*****:*****@192.168.10.145:3000/api/json/plugs_events"
    url2 = "http://*****:*****@192.168.10.145:3000/api/json/continuous_measuring"
    # dataSenderModule = DataSender(url1, url2)
    # eventDetectorModule = EventDetection(dataSenderModule)
    led_control_module = AddressableLedController()
    power_consumption_module.add(led_control_module)
    # power_consumption_module.add(dataSenderModule)
    # power_consumption_module.add(eventDetectorModule)

    while 1:
        # pass
        socketio.sleep(
            0.5
        )  # This can't be removed, otherwise the heartbeats sending will fail
Exemple #5
0
def selected(message):
    AddressableLedController().stop_movement()
Exemple #6
0
def selected(message):
    AddressableLedController().make_selected_feedback(message["led"])
Exemple #7
0
def change_position(message):
    AddressableLedController().changeLed(message["position"])
Exemple #8
0
def change_delay(message):
    AddressableLedController().change_delay(message["delay"])
Exemple #9
0
def change_person_near(message):
    AddressableLedController().person_change(message["personNear"])
Exemple #10
0
def change_relay_state(message):
    socket_control.change_relay(message["relayState"])
    AddressableLedController().change_relay_state(message["relayState"])
Exemple #11
0
def receive_initial_configs(message):
    socket_control.initialize_relay(message["relayState"])
    AddressableLedController().initialize_leds(message["leds"],
                                               message["relayState"],
                                               message["personNear"],
                                               message["delay"])