Interferenza motori-sensori ultrasuoni

Buongiorno, è da un paio di giorni che sono alle prese con un problema di interferenze. Ho costruito una macchinina in grado di rilevare gli ostacoli utilizzando arduino pro mini , il sensore ad ultrasuoni HC SR04 e l' integrato L293D per comandare due motorini staccati da un vecchio drone che avevo in casa. Non essendo un mago dell'elettronica e elettrotecnica, come alimentazione di tutto (arduino, sensore, ponte h) uso la batteria del drone a 3.7 Volt. Funziona bene sia la lettura delle distanze dal sensore, sia l'azionamento dei 2 motori, Il problema sta nel fatto che se metto insieme le due cose, ovvero banalmente scrivo

vaiDritto(); Serial.println(distanza()); delay();

, sul seriale compaiono valori sballatissimi e discontinui della distanza, cosa che non succede se non faccio azionare i motori..

Ho provato ad alimentare il sensore sia con la batteria che con arduino, svariati tentativi con massa in comune ma niente, i segnali continuano a interferire! Qualcuno saprebbe darmi una mano?

Visto che usi un L293 presumo siano motori a spazzole, puoi provare a mettere proprio sul motore dei condensatori ceramici da 100nF saldando un lato sul pin del motore e l'altro sulla carcassa del motore. Altra cosa che puoi provare è di "spegnere" i motori in quell'attimo in cui arduino acquisisce la distanza, se è abbastanza veloce nemmeno te ne accorgi che i motori per un attimo non sono stati alimentati

Grazie mille zef! Ora cerco i condensatori! La seconda è una buona idea ma purtroppo l'interferenza avviene anche con motore non alimentato (ma in rotazione per inerzia) !

Ciao

Ora cerco i condensatori!

mettine anche un terzo stesso valore tra i due pin del motore. Ciao