Купюроприёмник и помехи
- Войдите на сайт для отправки комментариев
Доброго времени суток, форумчане! В сложившейся прискорбной ситуации вынужден обратиться к Вам за помощью.
Подключаю купюроприёмник к Ардуине согласно с указаниями https://silatoka.net/arduino-nv-9 при использовании ниже указанных схемы и кода.
Невзирая на то, что к пину приёма сигнала подтянут резистор, плата порой принимает непонятного рода помехи, так же реагирует и на подключение проводов к другим пинам. Висящие проводки, подключённые к другим пинам, вообще выступают в роли антенны по приёму стороннего сигналa; подключение блока питания к сети тоже приводит к начислению нескольких денежных единиц, как следствие информация о внесённой сумме денег сильно искажается. Стоит отметить, что "голая" ардуина тоже ловит помехи, даже при подключении к пину подтягивающего резистора. Проверял на двух платах и двух идентичных блоках питания - результат тот же.
Блок питания:
Что характерно, пребывая в другой локации подобных проблем не наблюдал. Не уверен имеет ли это сильное влияние, но сейчас нахожусь вблизи вышки сотовой связи. Буду чрезмерно благодарен за помощь.
P.S. Прошу прощения, если тема оформлена не лучшим образом, на данном форуме впервые.
При использовании следующего кода:
const int moneyPin=2; const int zapretPin = 5; int money=0; int sum=0; unsigned long timeAllPulse1=3000; // макс. время приема купюры unsigned long timeCount1=0; void setup() { pinMode(zapretPin, OUTPUT); pinMode(moneyPin,INPUT_PULLUP); Serial.begin(9600); Serial.println("ready"); attachInterrupt(0,count_pulse1,FALLING); } void loop() { digitalWrite(zapretPin, LOW); // прошло максимальное время приема купюры? if(money>0 && (millis()-timeCount1)>timeAllPulse1) { sum+=money; money=0; Serial.print("Kredit= "); Serial.println(sum); } } // обработка прерывания — получить кол-во импульсов // void count_pulse1() { detachInterrupt(0); money++; if(money==1) timeCount1=millis(); attachInterrupt(0,count_pulse1,FALLING); }
Прошу прощения, в коде вместо "pinMode(moneyPin,INPUT_PULLUP);" используется "pinMode(moneyPin,INPUT);" первый вариант имеет не совсем корректное отношение к указанной схеме.
На прошлой неделе боролись с помехами в купюроприёмнике. Слабо посмотреть - поискать прежде чем постить тоже самое?
Поисковик сайта не находил подобных тем с участием купюроприёмника, а если таковы и были, то шум зачастую вызывался подключение ещё какого-то устройства, шагового двигателя, например. Тем не менее, буду благодарен за наводку
Странно. Только что была 12 тема с верху в аппаратных вопросах.
nik182, там был монетоприёмник :)
unterrukroppen, http://arduino.ru/forum/apparatnye-voprosy/problemy-s-polucheniem-impulsov-ot-monetopriemnika
А какая разница? Помехи и решения одинаковы для них.
nik182, никакой. Но он то гуглил по другому слову :)
Благодарю! Не могли бы ли вы быть любезны посоветовать хороший блок питания, возможно производителя?
Конденсаторы везде повесить по питанию. попробовать засунуть все в алюм кастрюлю или нержавейку и проверить перестанут ли идти помехи. Вообще arduino платки крайне не помехазащищщеные, я однажды заталкивал плату в фольгу чтоб избавится от помех. КМОП микросхемы они такие...