a tu kupiłem te chińską okrągłą podstawkę 20mm i taki numer...
Zafiksowałeś się na tym kawałku drutu, który zapewne winny nie jest, bo tam nie ma co się zepsuć.
Możesz mieć uszkodzone Arduino, shielda, jakieś silne zakłócenia w pobliżu ...
Najpierw całkiem odłącz ten czujnik i zobacz co się dzieje.
Jeśli wszystko będzie działać zgodnie z oczekiwaniami, to podłączaj układ po kawałku i sprawdzaj kiedy problem powróci.
Możesz też zamiast czujnika wpiąć jakiś przycisk z dwoma krótkimi kabelkami i ręcznie symulować kontakt narzędzia.
Ale na pewno nikt tu nie jest jasnowidzem i się nie domyśli co jest nie tak - wszystkie próby musisz zrobić sam.
Kolego TOP67- tego wzmocnienia nie próbowałem, jeśli ma to pomóc, to coś takiego przygotuje.. Dziwi mnie jednak trochę samo zachowanie układu, gdyż mam drugie Arduino uno i działające na nim prototypowe cnc, na którym uczyłem się obsługi, tam do nakładki SHIELD wpięte są przewody bezpośrednio z płytki pomiarowej wykonanej z kawałka PCB i śmiga aż miło, a tu kupiłem te chińską okrągłą podstawkę 20mm i taki numer...
Kable działają jak anteny. Jak je poprowadzisz koło zasilacza impulsowego lub wrzeciona, to łapią sygnał.
Kondensator podepnij przy samej płytce.
Natomiast rezystor teoretycznie nie jest potrzebny, bo Arduino ma podciąganie, ale w jednej płytce udało mi się go upalić. Sprawdź czy bez żadnych kabli masz na A5 napięcie 5V.
Analogowy pin z kablem i nie podciągnięty do masy lub zasilania odpowiednim rezystorem to detektor promieniowania elektromagnetycznego. Na twoim zdjęciu widać, że tuż obok arduino masz źródło - zasilacz. To wystarczy.
Tu przykład działania takiego kabelka podpiętego do pinu analogowego w Arduino (czyli atmedzie) i efekty
od kabla ładującego telefon. Zrobiłem taką zabawkę aby sprawdzić co mi zakłóca urządzenia.
// EMF Detector for LED Bargraph v1.0
// 5.12.2009
// original code/project by Aaron ALAI - [email protected]
// modified for use w/ LED bargraph by Collin Cunningham - [email protected]
// modified for use buzzer signalization by Tomasz Bartuś
// http://home.agh.edu.pl/~bartus/index.php?action=efekty&subaction=arduino&item=28
#define NUMREADINGS 15 // raise this number to increase data smoothing
int senseLimit = 15; // raise this number to decrease sensitivity (up to 1023 max)
int probePin = 5; // analog 5
int val = 0; // reading from probePin
// variables for smoothing
int readings[NUMREADINGS]; // the readings from the analog input
int inde = 0; // the index of the current reading
int total = 0; // the running total
int average = 0; // final average of the probe reading
void setup() {
Serial.begin(9600); // initiate serial connection for debugging/etc
for (int i = 0; i < NUMREADINGS; i++)
readings[i] = 0; // initialize all the readings to 0
}
void loop() {
val = analogRead(probePin); // take a reading from the probe
if(val >= 1){ // if the reading isn't zero, proceed
val = constrain(val, 1, senseLimit); // turn any reading higher than the senseLimit value into the senseLimit value
val = map(val, 1, senseLimit, 1, 1023); // remap the constrained value within a 1 to 1023 range
total -= readings[inde]; // subtract the last reading
readings[inde] = val; // read from the sensor
total += readings[inde]; // add the reading to the total
inde = (inde + 1); // advance to the next index
if (inde >= NUMREADINGS){ // if we're at the end of the array...
inde = 0; // ...wrap around to the beginning
}
average = total / NUMREADINGS; // calculate the average
Serial.println(val); // use output to aid in calibrating
}
}
i zobaczyć w Monitorze portu szeregowego jakie wartości będzie pokazywać gdy pod pin A5 jest podpięty kabel, gdy dotkniesz go ręką...
zachowanie spokoju oznacza zdolności do działania
ᐃ 🜂 ⃤ ꕔ △ 𐊅 ∆ ▵ ߡ
Czy zastosowanie ekranowanego kabla sterowniczego BiT LiYCY 2x1.0mm pomoże wyeliminować problem, plus zastosowanie kondensatora , czy też bez potrzeby utrudniam sobie sprawę ?
Kolego PITSA- faktycznie masz zupełną rację, a pokazanie na przykładzie jak bardzo sieje impulsowy zasilacz obrazuje idealnie mój problem.. mozna było się spodziewać tego efektu od początku ;(
Zwykle wystarczy kondensator. A same kable można skręcić na wspólnym odcinku, wtedy indukowane napięcia się znoszą.
Poza tym mniejszy rezystor podciągający wymusza większy prąd, czyli większą odporność na zakłócenia. Najlepsza by była pętla prądowa, ale przy takim czujniku nie da się.
Może nic nie wniosę do tematu, ale najbardziej banalne rozwiązania są z reguły najlepsze - ta śruba widoczna na zdjęciu na pewno nie styka się z polem lutowniczym przy styku A5 ?
IHaveNoIdea - powiem Ci... bardzo ciekawa uwaga, jutro już wracam i pierwsze co biegiem do CNC sprawdzić czy faktycznie nie mam tam połączenia ! proszę o cierpliwość do wieczora, napiszę co i jak, a już mnie roznosi z ciekawości
Sprawdziłem sugestię kolegi IHaveNoIdea - styku pomiędzy śrubą a polem lutowniczym nie było, więc tropem kolegi TOP67 wlutowałem kondensator 100nF pomiędzy GND a pin A5- to uzdrowiło proces pomiaru wysokości narzędzia. Śmiga aż miło, Dziękuję serdecznie za pomoc !!!
Trochę znów szybciej można działać w przygotowaniach do kolejnego projektu frezowania/cięcia po zmianie materiału, niżeli z kartką papieru i cykać po 0,1mm aż zablokuje