Social media responsive robot
Researchers: Patsaraporn Liewatankorn and Sana Yamaguchi
Aims for this week:
-Build a simple physical robot that receives peer pressure from Twitter, and displays levels of drunk behaviour and sends drunk tweets.
-Learn to use ESP32 development board (for its Wi-Fi functionality)
-Receive and send tweets by connecting ESP32 to twitter via Arduino IDE
We quickly built a simple robot from some small cardboard boxes, ping pong balls and 3 servo motors, so that we can focus more on programming the behaviours of the robot and the twitter input and output.
The aim of the robot’s physical behaviour was to create complex behaviour from just one input of receiving the value 1 when a hashtag is received. The accumulation of these messages received from twitter corresponds to the drunk level of the robot, which is linked to two main behaviour functions.
The first is the frequency of the behaviour. In the beginning, the robot moves less frequently, and as the drunk level increases, the robot moves with increasing frequency. The second behaviour function is the type of movement behaviour it displays. In the beginning stages, the eyes and feet move at a consistent and even pace, and as it gets more peer pressure from Twitter, it starts to incorporate more erratic movements. Combined together, the result is an occasional consistent movement in the beginning sober stage, and towards the higher drunk levels, the robot displays constant erratic behaviour.
ESP32 x Twitter
Since we want to connect our creation with outside world, we learn how to use the data from the internet to do something in the physical world, and vice versa. ESP32 has a WiFi and Bluetooth function so it fits this project.
So we played around with this functionality.To begin with, we started from making an orange tweet when it is being touched!
ESP32 x Twitter x Robot
The robot was built on an Arduino Uno, with the assumption that since the Arduino Uno and ESP32 are both being programmed in the Arduino IDE, combining the two codes would be a simple process. However, the ESP32 uses different libraries from the Arduino boards, so about an hour of tweaking was needed in order to adapt to the ESP32. In the future, it would be easier to both work on the same type of development board if the intention is to combine the codes in the end.
The biggest issue we have run into is with the structure of the code for connecting to twitter not working with the structure of the code for the robot’s behaviour. Currently they work separately, but not together.