IRIS: Difference between revisions

From XPUB & Lens-Based wiki
(Replaced content with "<div style='margin-top: -58px; margin-left:500px'> ===<big><big><big>Iris</big></big></big>=== </div>")
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
=Life Hack Agent: IRIS=
<div style='margin-top: -58px; margin-left:500px'>
==Running IRIS==
===<big><big><big>[[Iris]]</big></big></big>===
===WHAT IS IRIS===
</div>
Iris 0.5 is a smart machine that interacts with you via audio, camera and visual effects. It aims to be installed in a workplace environment. Iris has 3 characters: guru, pirate and announcer. The files follow this nomination.
 
[[File:Event pic.jpg | thumbnail | left | 600px | Banner for Iris launch Special Issue 7]]
 
<br> <br> <br> <br> <br> <br> <br> <br>  <br> <br> <br> <br>  <br> <br> <br> <br> <br> <br> <br> <br> <br> <br>
 
=== THE FILES ===
 
* The .json files (“guru.json”, “rebel.json” and “announcer.json”) are the files where all the sentences the characters say are stored.
* The script “guru-pirate.py” is the script that combines content of guru and pirate (from json files) to play their messages. It also integrates LEDs when the characters speak. When characters speak the LEDs light up and perform effects. This script runs when the camera detects motion.
* The script "motion_detector_2.py" is used to detect motion from camera connected to raspberry pi.
* The script "announcements.py" plays the messages of the Announcer (from json file)
* The credits for this project are under the script “colophon.py”, they are read out loud with espeak when covering the camera with a finger for a few seconds.
* “Motion.sh” is the script from where you bring everything to life. Just run ./motion.sh on your terminal.
 
=== INSTALLING DEPENDENCIES ===
 
[[File:Prototyping iris.gif | thumbnail|Early testings for Iris with LED's and motion detection]]
 
Last Updated on: 2018-12-12<br>
Performed in linux Debian<br>
Raspberry Pi 3 B+<br>
Pi Camera v2.1<br>
LEDs — WS2801B RGB LED Streifen Farbeffekte<br>
<br>
# Install Pip  <code>sudo apt-get update</code>  <code>sudo apt-get install python-pip</code>
# Check python2 version  <code>python --version</code>
# Check pip version  <code>pip --version</code>
# Properly install Setuptools module  <code>sudo apt-get install python-dev python-setuptools</code>
# Install opencv dependencies with pip  <code>sudo pip install opencv-python</code>
# Install imutils dependencies with pip  <code>sudo pip install imutils</code>
# Install Pillow dependencies with pip  <code>sudo pip install Pillow</code>
# Install espeak (to play the pirate)  <code>sudo apt-get install espeak</code>
# Install aplay (to play the colophon)  <code>sudo apt-get install aplay</code>
# Install sox (to play the colophon)  <code>sudo apt-get install sox</code>
 
[[File:Camera detection.jpg| thumbnail|Experimenting with opencv ]]
[[File:Optical flow.jpg|thumbnail|Experimenting an option for the movement detection (with optical flow) https://docs.opencv.org/3.4/d7/d8b/tutorial_py_lucas_kanade.html]]
[[File:EXPERIEMENT ON MOTION.png|thumbnail|experiment on motion]]
===HOW TO AUTOMATICALLY RUN THE IRIS ON RASPBERRY PI AT STARTUP ===
Tutorial on how to run a program on your Raspberry Pi at startup:
<BR>
https://www.dexterindustries.com/howto/run-a-program-on-your-raspberry-pi-at-startup/
<BR><BR>
The fourth method to run a program on your Raspberry Pi at startup is to use the systemd files. systemd provides a standard process for controlling what programs run when a Linux system boots up. Note that systemd is available only from the Jessie versions of Raspbian OS.
<BR><BR>
====Step 1: Create A Unit File====
Open a sample unit file using the command as shown below: <BR>
<code>sudo nano /lib/systemd/system/sample.service</code><BR><BR>
Add in the following text:<BR>
<code>[Unit]
Description=My Sample Service
After=multi-user.target
 
[Service]
Type=idle
ExecStart=/usr/bin/python /home/pi/sample.py
 
[Install]
WantedBy=multi-user.target</code>
<BR><BR>
You should save and exit the nano editor. This defines a new service called “Sample Service” and we are requesting that it is launched once the multi-user environment is available. The “ExecStart” parameter is used to specify the command we want to run. The “Type” is set to “idle” to ensure that the ExecStart command is run only when everything else has loaded. Note that the paths are absolute and define the complete location of Python as well as the location of our Python script.<BR><BR>
In order to store the script’s text output in a log file you can change the ExecStart line to:<BR>
<code>ExecStart=/usr/bin/python /home/pi/sample.py > /home/pi/sample.log 2>&1</code><BR>
The permission on the unit file needs to be set to 644:<BR>
<code>sudo chmod 644 /lib/systemd/system/sample.service</code><BR>
<BR>
You should save and exit the nano editor.
This defines a new service called “Sample Service” and we are requesting that it is launched once the multi-user environment is available. The “ExecStart” parameter is used to specify the command we want to run. The “Type” is set to “idle” to ensure that the ExecStart command is run only when everything else has loaded. Note that the paths are absolute and define the complete location of Python as well as the location of our Python script.<BR>
In order to store the script’s text output in a log file you can change the ExecStart line to:<BR><BR>
<code>ExecStart=/usr/bin/python /home/pi/sample.py > /home/pi/sample.log 2>&1</code><BR><BR>
The permission on the unit file needs to be set to 644:<BR>
<code>sudo chmod 644 /lib/systemd/system/sample.service</code>
<BR><BR>
 
====Step 2: Configure systemd====
Now the unit file has been defined we can tell systemd to start it during the boot sequence:<BR>
<code>sudo systemctl daemon-reload</code>
<code>sudo systemctl enable sample.service</code><BR><BR>
Reboot the Pi and your custom service should run:<BR>
<code>sudo reboot</code>
 
==THE BODY OF IRIS==
 
[[File:3dprinting.gif | 300px |3D printing of Iris ]]
 
==HACK THE PAD LIFE==
* https://pad.xpub.nl/p/life-hack-agent
* https://pad.xpub.nl/p/Life_Coach_Ideas
* https://pad.xpub.nl/p/life-hack-agent
* https://pad.xpub.nl/p/life-hack-agent-rebel
* https://pad.xpub.nl/p/Life_Coach_Appearence
 
* 2018-09-15 https://pad.xpub.nl/p/x-theses-on-life-hacks
* 2018-09-17 https://pad.xpub.nl/p/UNIX
* 2018-09-18 https://pad.xpub.nl/p/burnout-18.09.18
* 2018–09-25 https://pad.xpub.nl/p/burnout-25.09.18
* 2018-10–01 https://pad.xpub.nl/p/motivational-banners
* 2018-10-02 https://pad.xpub.nl/p/burnout-02.10.18
* 2018-10-03 https://pad.xpub.nl/p/2018-10-03
* 2018-10-11 https://pad.xpub.nl/p/burnout-11.10.18
* 2018-10-15 https://pad.xpub.nl/p/wiki-to-print
* 2018-10-22 https://pad.xpub.nl/p/22-10-2018
* 2018-11-07 https://pad.xpub.nl/p/07-11-2018
* 2018-11-13 https://pad.xpub.nl/p/life_hacks-13.11.18
* 2018-11-21 https://pad.xpub.nl/p/prototyping_21.11.18
* 2018-11-28 https://pad.xpub.nl/p/life-hacks-event
 
==COLOPHON==
 
Iris Version 0.5 Contributors: Gill Baldwin, [[User:Simon | Simon]]  [[User:Artemis gryllaki | <span style="color:#107896;font-family:Ubuntu bold;"> '''ΆΡΤΕΜΙΣ''']] [[User:Bohye Woo | <span style="font-family: Helvetica; font-size: 1pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 3pt; color: #000;"> B  O  <span style="font-family: Helvetica; font-size: 5pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 7pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 9pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 11pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 13pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 15pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 13pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 11pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 9pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 7pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 5pt; color: #000;"> B O  <span style="font-family: Helvetica; font-size: 3pt; color: #000;"> B O <span style="font-family: Helvetica; font-size: 1pt; color: #000;"> B O  ]] [[User:Zpalomagar |  <span style=" color:#ff00bf">'''Paloma''']] [[User:Tancre | Tancredi]][[User:Pedro Sá Couto  |<span style="color:#000;font-family:Helvetica;text-decoration: none;  font-size: 6pt; letter-spacing: 18px; font-weight: bold;">  PEDRO SÁ COUTO]] [[User:Rita Graca | <span style="text-decoration: none; color:#000"> '''Rita''']][[User:)biyibiyibiyi( | )biyibiyibiyi(]], Silvio Lorusso, Aymeric Mansoux, André Castro, Steve Rushton, Michael Murtaugh, Leslie Robbins. Produced and published by the Experimental Publishing (XPUB) program of the Piet Zwart Institute, Rotterdam, December 2018. A collaboration between the Research Department of Het Nieuwe Instituut and XPUB.
<br><br>
You can find IRIS launching:https://burnout.hetnieuweinstituut.nl/en/activities/life-hacks-introducing-iris
 
 
[[Category: XPUB]]
[[Category: Special Issue]]

Latest revision as of 19:34, 12 December 2018