Progetto

Generale

Profilo

File » Codice_Manobot.pde

Skecth per Manobot - Moreno Petrucci, 25-05-2012 13:06

 
1

    
2
/*
3
    Progetto : ManoBot -  HackLab Terni
4
    Marzo - Aprile 2012
5
    Autore : Moreno Petrucci
6
*/
7

    
8
#include <Servo.h>
9

    
10

    
11
Servo ServoMot_1;
12
Servo ServoMot_2;
13
Servo ServoMot_3;
14
Servo ServoMot_4;
15
Servo ServoMot_5;
16

    
17

    
18
int melodia[]={100,350,600,200,100};
19
int durataNote[] = {250, 500, 250, 250, 250};
20

    
21
int analogValue_1 = 180;
22
int analogValue_2 = 180;
23
int analogValue_3 = 180;
24
int analogValue_4 = 180;
25
int analogValue_5 = 180;
26

    
27

    
28
void setup()
29
{
30

    
31
ServoMot_1.attach(8);
32
ServoMot_2.attach(9);
33
ServoMot_3.attach(10);
34
ServoMot_4.attach(11);
35
ServoMot_5.attach(12);
36

    
37
ServoMot_1.write(10);
38
ServoMot_2.write(10);
39
ServoMot_3.write(10);
40
ServoMot_4.write(10);
41
ServoMot_5.write(10);
42

    
43

    
44
Serial.begin(9600);
45

    
46
}
47

    
48

    
49
void loop()
50
{
51

    
52
//Lettura segnale analogico proveniente da Sensore Flex
53
analogValue_1 = constrain(map(analogRead(2),300,240,9,180),9,180);
54
analogValue_2 = constrain(map(analogRead(0),350,260,9,180),9,180);
55
analogValue_3 = constrain(map(analogRead(1),270,130,9,180),9,180);
56
analogValue_4 = constrain(map(analogRead(4),285,220,9,180),9,180);
57
analogValue_5 = constrain(map(analogRead(3),300,250,9,180),9,180);
58

    
59
//      1 -  P O L L I C E
60
// Azionamento Servomotore in base al segnale analogico entrante
61
if (analogValue_1 > 35) {ServoMot_1.write(analogValue_1);}
62
// Riproduzione tono musicale
63
if (analogValue_1 > 40) {tone(13, melodia[0],durataNote[0]);} //if (analogValue_1 > 150) {tone(8, melodia[2] + analogValue_1,durataNote[0]);
64

    
65
//      2 -  I N D I C E
66
// Azionamento Servomotore in base al segnale analogico entrante
67
if (analogValue_2 > 25) {ServoMot_2.write(analogValue_2);}
68
// Riproduzione tono musicale
69
if (analogValue_2 > 80) {tone(13, melodia[1],durataNote[1]);} //if (analogValue_1 > 150) {tone(8, melodia[2] + analogValue_1,durataNote[0]);
70

    
71
//      3 -  M E D I O
72
// Azionamento Servomotore in base al segnale analogico entrante
73
if (analogValue_3 > 15) {ServoMot_3.write(analogValue_3);}
74
// Riproduzione tono musicale
75
if (analogValue_3 > 50) {tone(13, melodia[2],durataNote[2]);} //if (analogValue_1 > 150) {tone(8, melodia[2] + analogValue_1,durataNote[0]);
76

    
77
//      4 -  A N U L A R E
78
// Azionamento Servomotore in base al segnale analogico entrante
79
if (analogValue_4 > 15) {ServoMot_4.write(analogValue_4);}
80
// Riproduzione tono musicale
81
if (analogValue_4 > 70) {tone(13, melodia[3],durataNote[3]);} //if (analogValue_1 > 150) {tone(8, melodia[2] + analogValue_1,durataNote[0]);
82
//
83
//      5 -  M I G N O L O
84
// Azionamento Servomotore in base al segnale analogico entrante
85
if (analogValue_5 > 15) {ServoMot_5.write(analogValue_5);}
86
// Riproduzione tono musicale
87
if (analogValue_5 > 50) {tone(13, melodia[4],durataNote[4]);} //if (analogValue_1 > 150) {tone(8, melodia[2] + analogValue_1,durataNote[0]);
88

    
89

    
90
Serial.println(analogRead(2), DEC);
91

    
92
delay(100);
93

    
94
}
(9-9/12)