コード例 #1
0
ファイル: joy_cmd_vel.py プロジェクト: lalten/awesome_kaese
    def __init__(self):
        self.output_topic = rospy.get_param('~output_topic', '/cmd_vel')
        self.joy_UID = rospy.get_param('~tinkerforge_joy_UID', 'waz')
        self.tinkerforge_host = rospy.get_param('~tinkerforge_host',
                                                'localhost')
        self.tinkerforge_port = rospy.get_param('~tinkerforge_port', 4223)

        self.actual_steering = 0

        self.pub = rospy.Publisher(self.output_topic, Twist, queue_size=1)

        self.ipcon = IPConnection()  # Create IP connection
        self.joy = BrickletJoystick(self.joy_UID, self.ipcon)

        self.ipcon.connect(self.tinkerforge_host, self.tinkerforge_port)
コード例 #2
0
 def try_bricklet(self, uid, device_identifier, position):
     if device_identifier == 210:
         self.inputs["joystick"] = BrickletJoystick(uid,
                                                    self.controller.ipcon)
         self.inputs["joystick"].set_debounce_period(400)
         self.inputs["joystick"].register_callback(
             self.inputs["joystick"].CALLBACK_POSITION_REACHED,
             self.joystick_position)
         self.inputs["joystick"].register_callback(
             self.inputs["joystick"].CALLBACK_PRESSED, self.joystick_pushed)
         self.inputs["joystick"].set_position_callback_threshold(
             "o", -99, 99, -99, 99)
     if device_identifier == 234:
         self.inputs["multitouch"] = BrickletMultiTouch(
             uid, self.controller.ipcon)
         self.inputs["multitouch"].set_electrode_sensitivity(125)
         self.inputs["multitouch"].register_callback(
             self.inputs["multitouch"].CALLBACK_TOUCH_STATE,
             self.multitouch)
コード例 #3
0
    if y == 100:
        print('Top')
    elif y == -100:
        print('Bottom')

    if x == 100:
        print('Right')
    elif x == -100:
        print('Left')

    print("")


if __name__ == "__main__":
    ipcon = IPConnection()  # Create IP connection
    j = BrickletJoystick(UID, ipcon)  # Create device object

    ipcon.connect(HOST, PORT)  # Connect to brickd
    # Don't use device before ipcon is connected

    # Get threshold callbacks with a debounce time of 0.2 seconds (200ms)
    j.set_debounce_period(200)

    # Register position reached callback to function cb_position_reached
    j.register_callback(j.CALLBACK_POSITION_REACHED, cb_position_reached)

    # Configure threshold for position "outside of -99, -99 to 99, 99"
    j.set_position_callback_threshold("o", -99, 99, -99, 99)

    input("Press key to exit\n")  # Use raw_input() in Python 2
    ipcon.disconnect()
コード例 #4
0
        print("Stepper -> Zurück")
        stepper.drive_backward()
    else:
        print("Puffer erreicht")
        stepper.stop()


if __name__ == "__main__":

    ipcon = IPConnection()
    dcb = BrickDC(UIDdcb, ipcon)
    oled = BrickletOLED128x64(UIDoled, ipcon)
    poti = BrickletLinearPoti(UIDpoti, ipcon)
    ropoti = BrickletRotaryPoti(UIDropoti, ipcon)
    stepper = BrickStepper(UIDstepper, ipcon)
    joystick = BrickletJoystick(UIDjoystick, ipcon)
    irsensor = BrickletDistanceIR(UIDirsensor, ipcon)

    ipcon.connect(HOST, PORT)
    print("Verbindung unter folgenden Daten: \nIP: " + HOST + "\nPort: " +
          PORT)

    o_clear()
    print("Einstellungen werden gesetzt")
    o_write(1, 5, "Einstellungen")
    o_write(1, 5, "werden gesetzt")

    ctrl_hz_fan = 5000
    dcb.set_pwm_frequency(5000)
    dcb.set_acceleration(5000)