WORK IN PROGRESS

Le prototypage a commencé en février 2015 et les différents chantiers ont été lancés conjointement.

L'objectif est de produire une première sonde fonctionnelle d'ici la fin de l'année 2015 pour présenter ce prototype le 17 février 2016, bicentenaire de l'invention du stéthoscope par Laennec.

Development Planning

The sensor developed by Echopen is a culmination requiring several steps and different prototypes in order to control each component . Each of these prototypes is studied in stages, kinds of micro challenges to mobilize the community wishing to participate in their development:

An overview of the project is also available so you can discover, explore plug and participate at our work planning.

Computer248.png Hardware

Une sonde, comme nous la concevons, est l'assemblage d'un transducteur (piézo + backing), d'un beamformer et des l'électronique nécéssaire à l'emission d'un signal envoyé vers l'application qui pourra ainsi la transformer en image échographique, lisible par un professionnel de santé.

Cahier des charges

Une première synthèse d'outil serait le Kit Protaud, compatible avec la V0.

Le transducteur

Le développement du transducteur est conduit actuellement tous les jeudi au laboratoire Satie de l'ENS Cachan dont le Carnet de bord - Laboratoire SATIE donne les principaux éléments.

L'électronique

La partie électronique a commencé pendant l'été 2015

Microcontroleur

Code microcontroleur

Motor controlling

Basic charactics

The motor that we use are a motor of small dimensions includes an encoder able to determine the rotation and speed. Boasting a high quality construction and a very competitive price, it has a reduction ratio of 1:57.     The encoder and the motor power supply are accessible via a 10 cm cable terminated by a female connector 6 points. This connector is directly provided to receive an optional control module provided at the bottom of the page.

Characteristics:

  • Power supply: 6 Vdc
  • Power consumption: <= 240 mA
  • Torque: 617 g-cm
  • Speed: 126 rpm
  • No load speed: 152 rpm

Motor.JPG

  • Signals on the connector:
  • COLOR FUNCTION
    • Black -> Motor +
    • Red -> Motor-
    • Brown -> VCC
    • green -> GND
    • Blue -> SA
    • Violet-> SB

More information can be found in the site LEXTRONIC [1]

Test of the motor

The connection of the arduino and the motor can be found in the site DIGILENT [2]

Motor connection.jpg

As we haven't the Motor shield, we build a simple motor control circuit thanks to this blog [3]

Circuit-arduino.jpg

Now we can build the circuit around the motor:

Connection motor-encoder-arduino.png

Other composants that we need are:

1, Resistor 10 kOhms x 2;

2, Transistor PN2222 x 1;

3, 1N4001 diode x 1;

4, 270 Ω Resistor (red, purple, brown stripes) x 1;

5, Half-size Breadboard x 1;

6, Jumper wire pack;

7, Un potentiometer

Reading Rotary Encoders

There are manyopen sources in the Arduino Playground [4] Below is an image showing the waveforms of the A & B channels of an encoder.

Encoder function.jpg

the motor and the encoder turns as 1:57,


After connecting the motor and arduino together with a potentiometer. We can test the output of SA and SB by the code below:


/* Read  Encoder
 * Connect Encoder to Pins encoder0PinA, encoder0PinB, and +5V, GND.
 */  
double motorVelocity = 0;
int val; 

// direction of motor is decided by changing the motor+ and motor-

int pinIntensityMotor = 6;

int pinPotentiometre = A5;

int encoder0PinA = A1; 

int encoder0PinB = A3;

int encoder0Pos = 0;

int encoder0PinALast = LOW;

int n = LOW; 

int speed=100;

void setup() { 
  
  pinMode(pinIntensityMotor, OUTPUT);
  pinMode (encoder0PinA,INPUT);
  pinMode (encoder0PinB,INPUT);
  Serial.begin (9600);
} 


/* utilise the potentiometer to change the speed of the motor and read the encoder

void loop() { 

   val = analogRead(pinPotentiometre);    // read the value from the sensor
motorVelocity = (double)((val/1023.0)*255.0);

if (motorVelocity < 100){
  motorVelocity=0;
}

analogWrite(pinIntensityMotor, motorVelocity);
 
  n = digitalRead(encoder0PinA);

if ((encoder0PinALast == LOW) && (n == HIGH)) {

    if (digitalRead(encoder0PinB) == LOW) {
      encoder0Pos--;
    } else {
      encoder0Pos++;
    }

  Serial.print (encoder0Pos);
  Serial.print ("\n");
  } 
  encoder0PinALast = n;

} 

Open the monotoring window in ARDUINO IDE to observe the plus in the encoder: Test of encoder.jpg

Construire l'Alimentation

Scheme 1 : Build 'High Voltage Power Supply' (HVPS)

L'Ardunio DUE travaille à 3.3V, mais le transducteur piézoélectrique fonctionne habituellement à 100-300V, il semble donc obligé de construire un système d'alimentation à haute tension afin de générer de haute inpulse pour faire fonctionner le transducteur.

Pour obtenir de haute tension réglable, nous allons transformer le courant continu réglable de les LVPS en courant alternatif réglable à une fréquence d'environ, au moyen d'un oscillateur LC. Puis, un transformateur de step-up sera utilisé pour obtenir AC haute tension, qui peut être transformé en courant continu avec une demi-onde de tension redresseur doubleur. Voici le schéma de principe:

Schema-HVPS.jpg

Voici un schéma électronique et la simulation sur NI Multisim

Schema-1.jpg

Le résultat de la simulation:

Test result-3.3v,N0.35.jpg


http://forums.futura-sciences.com/electronique/704890-arduino-amplification-voltage-100v.html

In order to amplify the signal, we need a square waveform 5 V high. The digital outputs of the arduino are only 3.3 V high, so had to built a little circuit to do that. The arduino has a 5 V direct courant output, so with a transistor it is possible to have the desire signal with this :

Crenelleur scéma.png
Crenelleur bb.png

There are two 1000 Ohm resistors and a PN2222 transistor. With a blinking code we access to a 150 kHz signal with a 5 V amplitude this lead to a 70 V direct currant signal. This frequency of 150 kHz is the maximal frequency we can access with the classical digitalWrite function of the arduino. Is it possible to increase this frequency by using more low level function such as :

REG_PIOB_SODR = 0x1 << 27;
REG_PIOB_CODR = 0x1 << 27;

this two lines replace the digitalWrite function. With this script, it possible to access to a 10 MHz signal!

So with this new function, we have tried to increase the frequency of the square waveform input signal, but the amplitude of the direct output current does not increase more than the one we obtained at 150 kHz.

Scheme 2 :Build a boost converter

After discussions with John Norman, Director of NTS Ultrasonics Pty Ltd[5], he proposed us a 30-60VDC/DC boost calculator[6].

Boost calculator.jpg

by turning on and turning of Q2, the output can be controlled by the PWM pin of a microcontroller.

To build this circuit, all the materials needed are :

  1. Diode 1N5817 X1;
  2. MosFET 1RFD 110 X1;
  3. DC supply baterry 9V x1;
  4. capacitor 47uF x1, 33uFx1, 0.1 uFx1;
  5. Inductance 2200uHx1;

See Theory of the Boost Converter

After test on Multisim, we I find that the parametres of the composants are very important. Actually, we have to calculator the current first by the calculator cited in this site. In our case, we want to get an DC between 0 to 200V, so the maximum output is 200V. A potentiometer is used to change the output. The circuit are as follows:

HVPS-5V-200V.png

The drive circuit

We use the HVPS to provide high DC voltage, and the drive circuit is then designed as follows: The drive circuit: The drive circuit.png

La mécanique

Motor

Pièces mécaniques

Collecteur

Retro-ingénierie de sondes

Cf la page Approche Hacking de l'existant

Smartphone8.png Software

Les premières bases du développement de l'application sont disponibles sur le compte-rendu du Design & Code Camp du 16 mai 2015. Et la page dédiée au développement du software echopen

Inspirations

vula : une application mobile pour réaliser des examens des yeux | Pour plus d'informations

How to protect the receiving part ? See Clipping test

The Emile test

Presentation

BOM

Schematics

Setup

Measurements

Display

See Red Pitaya WebApp

Des ressources clé

Biblio

Key general articles (base of inspiration for our dear Emile)

Similar initiatives

  1. See Projets Similaires

Echopen s'engage à ce que toutes les informations personnelles concernant l'utilisateur contenues dans le formulaire de souscription soient considérées comme des informations confidentielles et ne soient utilisées qu'à des fins de communication. Ces informations feront l'objet d'un traitement automatisé. Conformément à la loi informatique et libertés du 6 janvier 1978, le client dispose d'un droit d'accès, de rectification et d'opposition aux données personnelles le concernant.Pour plus d'informations contactez-nous, ou jetez un coup d'oeil aux Mentions légales ou aux conditions générales d'utilisation du wiki echopen.