💦 Paraf Yún (en)


#1

Presentation

Topic about the innovation club’s Arbalet project, animated by Yoan Mollard, offers the creation of an animated and interactive water screen. Some actors participate to the project to carry on it : Université de Bordeaux, IUT’s departments and of course Arbalet.

Arbalet, the association managing the project, aims to entertain people by creating digital artworks. The creations are meant to be educative (people can easily program with visual programming languages).

Paraf Project consists in creating a structure that drops water to create images. An image takes 1/2 second to be fully formed. The project is not new but it has been mostly done for commercial purposes. A first version with 8 valves will be delivered in December 2018, and a second version with 160 valves in June 2019.

The Paraf team welcomes you and hope you'll enjoy the project as much as we do !

#2

Session 1

We started by explaining some of the main terms we'll be using during the project. Here are the definitions :

    DEFINITIONS

  • Analog and digital signal
    An analog signal is a continuous signal that varies over time and has an infinity of values.
    A digital signal has discrete values coded in binary.
    DAC -> Digital to Analog Converter.
    ADC -> Analog to Digital Converter.
  • Shift register and flip-flop
    A flip-flop is a clocked circuit that has an input and an output. At the clock signal it takes a value from the input and stores it until the next clock signal. Then it sends the value to the output.
    A shift register is a cascade of flip-flops with the same clock. It's used to store bit arrays.
  • Transistor
    A transistor is the fundamental piece of computers. It's a semiconductor device used as a switch in digital circuits to create logic circuits.
  • Solenoid, relay and electromagnet
    An electromagnet is a type of magnet. An electric current throught a wire wound into a coil around a magnetic core (like iron) creates a magnetic field.
    A solenoid is a coil wound into a tightly packed helix. It is a type of electromagnet that is used as a valve because it converts its energy into motion.
    A relay is an electrically operated switch based on solenoid.
  • Microcontroller and microprocessor
    A microcontroller is an integrated circuit that contains a CPU, memory and programmable input/output peripherals. They are mostly used for real-time computing within larger mechanical or electrical systems.
    A microprocessor is a processor build on a single circuit that integrates the functions of a CPU. Because it is build on a single chip its price is greatly reduced and its efficiency is increased.
  • Newton's second law
    Newton's second law is about the acceleration. Given an water droplet with a initial speed (m.s-1) we will calculate the variation of that speed in function of the time (m.s-2).
    We'll have to calculate the resistance of the air on the droplet during its fall too.
  • Data bus
    A data bus is the communication of data between components inside a computer or between computers.
    It uses protocols, softwares and hardware to operate.
  • Baud, bit, byte, hexadecimal, decimal, ascii, unicode
    Basically what we have to remember here is that the baud is a mesure of symbol rate, similare as bit.s-1.
    A bit is a binary value that can be either 0 or 1.
    1 byte = 8 bits.
    Hexadecimal (0 to F) and decimal (0 to 9) are methods to represent the value stored in a byte.
    Ascii and Unicode are computing industry standards used to encode text with hexadecimal or decimal values.
  • RGB & HSV
    RGB and HSV are color models.
    RGB is an additive color model which means that by adding a certain amount of red, green and blue we can reproduce a broad array of colors.
    HSV is an alternative representation of RGB that uses 3 parameters : hue, saturation and value.
  • Stack & heap
    The stack and the heap are data structures used by programs to store variables.
    Function's parameters and local variables are stored in the stack. Because the stack doesn't check the availability of memory and is not managed by the program, its speed is better for the programm.
    The heap is used to allocate memory (better way to share data without duplicating it or to avoid a stack overflow) but the cost of this operation is bigger for the machine.
  • FDM & SLS
    These are both 3D printing methods.
    FDM consists in adding layers of molten material unlike SLS that sinters powdered material with a laser.
    SLS is more efficient because it doesn't have to deal with gravity, per example printing a bridge is easier with SLS.
    But because SLS required a much more expensive machine we'll only work with FDM. (-> contact us if you have that type of machine and if you don't know what to do with it ! :wink: )

#3

Session 2

Hi, this seance we made a return on last session because last time we had not manage to calculate the time that a water drop take to touch the floor. This time is about 0.63 seconds so we can conclude that our frame rate will be 2fps (frame per seconds).

After it, we switch on the main subject of the session, the functional analysis.
It’s a three part analysis :

  • Horny animal and octopus diagrams

  • Researches about the technical solutions (what material can we use ?)

  • Global scheme of the system

Part 1 :

Horny animal diagram :

beteACorne

We use this diagram to define the principal function of our system. We see who it serve, on what it act and what is his final goal.

Our system will be use to link public with water and light.

Octopus diagram :

Diagramme%20pieuvre

(ERP = Établissement Recevant du Public = Establishment opened to public)

This diagram is used to tell us the main functions and the constraint functions of the system.

They are numbered but it’s not in order of importance.

FP1 : Entertain public with light and water
FP1.1 : See the fall of water and the light
FP1.2 : enable a takeover
FP2 : Permit the learner to learn

FC1 : Protect the users from risks
FC2 : Have the ability to move the system
FC3 : Be hygienic
FC4 : Choose the animation type (easily)
FC5 : Save energies
FC6 : Supply the system
FC7 : maintain the system

We now need to find technical solutions to this functions

Part 2 :

The researches are simple, for each function or constraint, we give a solution to it.

FP1.1 : valves / lamp / controller --> micro-controller
–> micro-computer
FP1.2 : IHM (Interface Homme Machine = Human-Machine-Interface)
–> Loaded screen
–> Smartphone application
–> Vocal command
–> Kinect sensor

FC1 : electrical insulation, large and heavy plinth
FC2 : transport foot
FC3 : water treatment
FC4 : Animation management programm
FC5 : LED / Basin / Pump
FC6 : power supply (and distributor)
FC7 : Put the controller at man’s height

Then, we searched most exactly which material we’ll use :

Valve : Discrete
Normally opened / closed

LED : RGB (Red Green Blue) / RGBW (Red Green Blue White)

Controller : Arduino (-> restriction : mémoire)
Raspberry + UNIX
computer

Power supply : ~12V : 40A

Phone : We will use a framework that compile on both iOs and Android on the base of the same code.

Part 3 :

After it, we draw a global scheme of the system :


#4

Session 3

First Part

During this fisrt part, we familiarized with a transistor. We took note about its fonctionnement and we built a circuit composed of an arduino, a transistor and sluice gate.

	Arduino			Transistor			Sluice gate

Then, we connected this circuit to a laptop to program the arduino. Our goal is to create a program which permit to open and to close the sluice gate. This program have to initial 3 values, number of opening, time of opening and time of impetus, this 3 values have to be changed during the futur experimentation. This experience involve to calculate the flow water’s weight in relation to number of opening of sluice gate and to determine the best impetus for our water drop and to find its speed.

Second Part

We meet the GMP group who create the structure of the project.
After taking note of the dimentions they will need. We put the construction (arduino+transistor+sluice gate) on an hoist and than we make the calculation.

Table of test :

The test permit to conclude :

  • The plastic connector permit to make bigger water drops (so more visible)
  • To reduce the water drops dispersal, it’s possible to play on the settings of pressure pre-sluice gate and to add a guiding bus at the end of the solenoid valve.
  • For a best visibility, the light need to be at solenoid valve way out and at the bottom of the construction.
  • Our test are done by a satisfactory setup.

A short viedo of the testing :


#5

Session 4

First session part

This session was devoted to the reflection of the website that we wanted to create, in order to allow "customers" an interaction with the project. It was also necessary to reflect on the creation of the server that will host the website.

It was decided that the customers interface will use HTML, CSS and Javascript, and the server would be in Python via Django.

-Django: Python Framework that manages the low layers of a site.

-Framework: "Set of tools and software components at the base of an application or software" (quoted to "journal du net") then in a second time we were interested in designing our graphical interface that we can see below:

Once the client had made montage, he could click on the "Preview" ("prévisualisation" wrote in the picture) button which would make a simulation screen appear; Where you would see what it would look like on the digital water wall.

If this goes to him, then he could throw it, this resquest in JSON format will be sent to the server that responds to him by another resquet.

In addition, we have formed two groups:

software group

Their mission was to take care of Django and create the entry point named Animator and these Static, Get and Post files.

Entry Point is a URL associated with :

-Get: It is automatic and will contain the URL sequence for example Get/sequence.

-Post: which allows to write in the sequence.

-Static: Which will host all HTML, JavaScript and CSS

The structure for the recording of the sequence will be in JSON format as a dictionary and list {[...]}

Electronic group

Search for all items to put on the electronic card.

2nd session part

The software group had a hard time getting into hand Django following a conflict problem between Python 2.7 and the latest version because they were both installed on the computers. So we focused on the theoretical aspect of Django.

Electronic group has provided an example of an electronic card that can be seen below:

ps: 7805 : regulator that converts 12v to 5v for the microcontroller


#6

Mecanics work package

This work package follows the casual way to get a final product (Preconception, conception, method, manufacturing, control). We are currently in the conception step, which allowed to get the following:

• Technological soltuions to all technical functions of Paraf
• A detailed CAD sketch
• Size calculation of the chosen solutions

1. Preconception (total duration: 2 weeks)

This part consists into synchronizing all actors (product owner, students, technicians…) around a specifications document. The mechanical WP consists into these tasks:

• Computation of throughput and pressure needed for the water pump: we need a pump of 13000l/h and a discharge head of 7 meters (computationf for 160 solenoids)
• Computation of the overall mass: in order to know the total mass that the frame must withstand. Apart from materials, it includes all electronics and water.
• Conception of a monobloc chassis withstanding all weights
• Computation of the duration of a single falling drop: it merges theoretical result + experiment made during the third session. Results: with a height of 2m, a fall = 0,63 sec.

2. Conception :

This part is essentially about conception of the chassis. At the time we are writing this, our chassis has the following look:

Here are the choices we made:
• Material will be inox steal
• For artistic/aethetic reasons, the upper and lower basins will follow an arc of radius = 3 meters
• The height of the lower basin must be higher than the height of the electrical cabinets

Software work package

Software will allow the administrator to create and manage animations made of water drops and color lights.
The software work group has been splitted in 2 parts: back-end and frontend.

Backend

Backend is the hidden part of software, but is a substantial part of the work though. It’s the main software part that communicates with electronics. It is made of 3 essential elements;
o A web server
o A web application
o A database (where data of the web app are stored ; here it will store the animations)

Frontend:

This part is the visible interface for the administrator programming the water curtain. It is more about web design languages:

  • HTML
  • CSS
  • JavaScript
  • jQuery
  • Bootstrap

#7

Mid-semester : The electronic board (PCB)

We’re making progress about electronics during the 2 semesters. The 160 electrovalves will be driven by 10 boards (named PCB) made especially for Paraf. The will communicate between each other thanks to a RS485 bus and DMX, a communication protocol used in fixtures for concerts and events.

This board embeds the following:

  • 1 12V power supply connector
  • 1 RS485 connector to connect the boards between each other, chained 2-by-2
  • 16 connectors to plug electrovalves (aka solenoids)
  • 1 ATMEGA microcontroler identical to the Arduino boards
  • 1 AVR ISP connector, from which we’ll send the program to the board
  • 1 USB connector, allowing to get debug data from the computer during development

At the end of February, we’re sending this board to a factory in order to produce the first prototype. We know that this board behaves similarly to an Arduino, which means that each board will have a program. This code will be identical on all boards, except a “board address” (1, 2, 3, …) that will differenciate a board from other ones.