Problema con l'acquisizione della posizione del sensore FSLP_10 cm Interlink

Salve a tutti,

ho iniziato da poco a lavorare con Arduino UNO.

Il problema lo riscontro al momento dell'acquisizione della posizione. Il sensore infatti dovrebbe restituire contemporaneamente la forza e la posizione in cui è stata applicata.

Quando configuro il sensore solo per acquisire la posizione, il sensore satura alla fine del primo blocco della striscia. Mentre quando lo configuro per leggere contemporaneamente posizione e forza, la posizione satura al valore 1024 sull'intera striscia.

Ho provato a scrivere il codice per l'acquisizione contemporanea di forza e posizione, settandolo come da datasheet.
(ecco il datasheet: https://www.pololu.com/file/0J750/FSLP-Integration-Guide-13.pdf)
Il codice che ho scritto:

#define pin_R0                  2   
#define pin_SL_T3            A0 
#define pin_Alim_Relé       7   
#define pin_Analogico       A3 
#define pin_Digitale          4   

#define SERIAL_BAUD_RATE    4800//numero di elementi scambiati durante la comunicazione seriale
#define PER_CYCLE_DELAY      25 //tempo di ritardo per ogni ciclo 25ms
#define TOUCH_THRESH         0.2 //soglia per il tocco


void setup() {
  Serial.begin(SERIAL_BAUD_RATE); //inzia la comunicazione arduino-PC
 
   // Step 1 - Scarico la carica dal sensore
  pinMode(pin_R0, OUTPUT);
  digitalWrite(pin_R0, LOW);
  pinMode(pin_SL_T3 , OUTPUT);
  digitalWrite(pin_SL_T3 , LOW);

  // Step 2 - Set up del Relé

  pinMode(pin_Alim_Relé, OUTPUT); 
  pinMode(pin_SL_T3,INPUT);  //perchè devo acquisire il segnale
  
}


void loop() {

  //Acquisisco la posizione
  digitalWrite(pin_Alim_Relé, LOW); //decide se collegare D2 a massa o al pin di ingresso
  delay(500);
  
  pinMode(pin_Digitale, OUTPUT);   
  digitalWrite(pin_Digitale, LOW);  
  pinMode(pin_R0,INPUT);    
  
  int posizione = analogRead(pin_SL_T3);

  
  // Acquisisco la forza
  digitalWrite(pin_Alim_Relé, HIGH);
  delay(500);
  pinMode(pin_R0, OUTPUT); 
  digitalWrite(pin_R0, LOW); 

  /*** Vado a leggere la forza sul sensore***/
  float a = 5;
  float b= 1024;
  float livello_tensione = a/b;
 
 int V1 = analogRead(pin_Analogico);
 int V2 = analogRead(pin_SL_T3); 

 float V1_ten = livello_tensione*V1;
 float V2_ten = livello_tensione*V2;
 float force = (2.5*V2_ten)/(V1_ten-V2_ten);  //acquisisco la forza in N e non in livelli

  if (force>=TOUCH_THRESH){
    Serial.print(" Position: ");
    Serial.print(posizione);
    Serial.print(" Force: ");
    Serial.println(force);
 
  }
  delay(PER_CYCLE_DELAY);

}

Quale potrebbe essere il problema?

Vi ringrazio per l'attenzione.

In allegato, vi giro uno schema della configurazione del sensore con arduino.

schema_FSLP_10cm.pdf (34.7 KB)

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie.

Guglielmo

P.S.: Qui una serie di link utili, NON necessariamente inerenti alla tua domanda:
- serie di schede by xxxPighi per i collegamenti elettronici vari: ABC - Arduino Basic Connections
- pinout delle varie schede by xxxPighi: Pinout
- link generali utili: Link Utili