For this project we are assuming, that you have a Python development environment set up and that you have a rudimentary understanding of the Python language.
The goal of this little project is to give an idea how the relays of the Industrial Quad Relay Bricklet have to be switched to turn the mains switches on/off.
The following code uses
set_monoflop() to trigger a button
press on the remote control. A monoflop will set a new state (relay open or close)
and hold it for a given time (1.5s in the example code). After this time
the previous state is restored. This approach simulates a button click that
takes 1.5s (1500ms).
According to the hardware setup section the inputs of the remote control should be connected as follows:
To trigger the switch "A ON" of the remote control the relays 0 and 2 of the
Industrial Quad Relay Bricklet have to be closed. This is represented by the
(1 << 0) | (1 << 2).
So the monoflop function should be called with this selection mask and a time of 1500ms to simulate a button press of "A ON". See the following source code for a minimal example.
#!/usr/bin/env python # -*- coding: utf-8 -*- HOST = "localhost" PORT = 4223 UID = "ctG" # Change to your UID VALUE_A_ON = (1 << 0) | (1 << 2) # Pin 0 and 2 high VALUE_A_OFF = (1 << 0) | (1 << 3) # Pin 0 and 3 high VALUE_B_ON = (1 << 1) | (1 << 2) # Pin 1 and 2 high VALUE_B_OFF = (1 << 1) | (1 << 3) # Pin 1 and 3 high from tinkerforge.ip_connection import IPConnection from tinkerforge.bricklet_industrial_quad_relay import IndustrialQuadRelay if __name__ == "__main__": ipcon = IPConnection() # Create IP connection iqr = IndustrialQuadRelay(UID, ipcon) # Create device object ipcon.connect(HOST, PORT) # Connect to brickd # Don't use device before ipcon is connected iqr.set_monoflop(VALUE_A_ON, 15, 1500); # Set pins to high for 1.5 seconds ipcon.disconnect()