CONFIGURAZIONE ED UTILIZZO DI UN MASTER PUZZLE IN CAN**
In questo esempio si vuole utilizzare un master puzzle che comunica con un dispositivo syel P10 linux.
Sul master sono state utilizzate tre cartucce con tre tipi di ingressi differenti a titolo dimostrativo.
Nel file start.c si nota come siano state dichiarate
xn_config[0] = C_ADC; // ingresso analogico
xn_config[1] = C_IN; // ingress1 digitali
xn_config[2] = C_OUT; // uscite digitali
xn_config[3] = C_EMPTY;
xn_config[4] = C_EMPTY;
xn_config[5] = C_EMPTY;
xn_config[6] = C_EMPTY;
xn_config[7] = C_EMPTY;
puzzle_start_can(0, 0); // avvio comunicazione
Nel file common.h viene inizialmente inclusa la libreria apposita “puzzle6.h”
#include "puzzle6.h"
#define Ing_Anal p50_x1_anal
#define Ing_dig1 x2_i1 // X2.0
#define Ing_dig2 x2_i2 // X2.1
#define Out_dig1 x3_o1 // X3.0
#define Out_dig2 x3_o2 // X3.1
Nell’esempio, oltre che modificare le uscite digitali e leggere gli ingressi sia digitali che quello analogico vengono fatte delle valutazioni sul valor medio del dato analogico. A display vedrete i seguenti valori:
Ing_Anal = lettura ingresso analogico
Ing_Anal_max = massimo valore letto in ingresso (a fianco c’è un numero che sono i campioni sopra il valor medio di 10 tik)
Ing_Anal_min = minimo valore letto in ingresso (a fianco c’è un numero che sono i campioni sotto il valor medio di 10 tik)
Ing_Anal_mediato = lettura ingresso analogico mediata
Ing_Anal = massimo valore mediato
Ing_Anal = lminimo valore mediato
Il tasto reset azzera questi valori
L’esempio è stato testato su un dispositivi syel p10 ed un master puzzle via CAN bus ed è liberamente scaricabile dal seguente link:
https://drive.google.com/file/d/1UyvUWTlRFX60brPdWx8EqynhXc16tAQV/view?usp=sharing
2025-02-04 Creatore dell’articolo Simone De Santis. Per ulteriori richieste simone.desantis@syel.it