Getting started
SIC is a framework for quickly getting started with social robotics by making it easy to combine complex devices such as Nao’s and powerful services such as Google Dialogflow.
Installation
You can find the instructions on how to install the framework here: https://socialrobotics.atlassian.net/wiki/spaces/CBSR/pages/2180415493
Video Walkthrough
Follow along with https://www.youtube.com/watch?v=9u5bwFHF8tUor https://youtu.be/CnjyYcLV8PQ
Setup
Once installed to all devices you want to use, we can start the framework. This consists of two (or three) steps:
Start Redis
(Optional) Start a service, such as face detection
Run your program
Starting Redis and SIC on your laptop
To enable communication between all your devices, we have to start Redis on some device.
This can be done in two ways: By starting Redis yourself or using docker.
In a (WSL) terminal, start Redis using
# in the `framework` folder:
redis-server conf/redis/redis.conf
Troubleshoot (Could not create server TCP listening socket *:6379: bind: Address already in use)
If you encounter the error Could not create server TCP listening socket *:6379: bind: Address already in use.
, please use the following command to stop the Redis server first
sudo systemctl stop redis-server.service
And, if you wish to prevent Redis server from starting automatically at boot, you can run
sudo systemctl disable redis-server.service
Running a local demo
To start a demo, for example to show your computer’s camera output on your screen, simply execute a python script. Some demos are available in the framework/sic_framework/tests
folder. Here is a minimal example:
To start the camera demo from the terminal, use the following commands.
Note: This demo requires you to have the OpenCV installed.
And you should get the following output:
If all went well, a display should pop up showing you the camera output of your webcam!
Troubleshoot
Running a NAO robot demo
To run a demo with a NAO robot, see .
Advanced
If you would like to dive deeper, you can use docker exec -it <Container ID> redis-cli
in a terminal to use the Redis command line interface; see https://redis.io/docs/ui/cli/ for documentation of how to use this.
In Docker Desktop you can easily copy the container ID to a clipboard: