Мазмұны:

Raspberry Pi көмегімен деректерді тіркеуші жасау: 3 қадам (суреттермен)
Raspberry Pi көмегімен деректерді тіркеуші жасау: 3 қадам (суреттермен)

Бейне: Raspberry Pi көмегімен деректерді тіркеуші жасау: 3 қадам (суреттермен)

Бейне: Raspberry Pi көмегімен деректерді тіркеуші жасау: 3 қадам (суреттермен)
Бейне: Защита диссертации PhD Жаркимбековой А.Т. 2024, Шілде
Anonim
Raspberry Pi көмегімен деректерді тіркеуші жасау
Raspberry Pi көмегімен деректерді тіркеуші жасау

Бұл қарапайым деректерді тіркеу құралы аналогты LDR (Photoresistor) көмегімен үнемі жарық өлшейді және оларды Raspberry Pi -де мәтіндік файлда сақтайды. Бұл деректерді тіркеуші жарық деңгейін әр 60 секунд сайын өлшейді және тіркейді, бұл жарықтың ұзақ уақыт бойы қалай өзгеретінін бақылауға мүмкіндік береді.

Егер біз Raspberry Pi көмегімен аналогты сенсорларды қолданғымыз келсе, сенсордың қарсылығын өлшей білуіміз керек. Arduino -дан айырмашылығы, Raspberry Pi GPIO түйреуіштері қарсылықты өлшей алмайды және оларға берілген кернеу белгілі бір кернеуден жоғары болса ғана сезе алады (шамамен 2 вольт). Бұл мәселені шешу үшін аналогты цифрлық түрлендіргішті (ADC) немесе оның орнына салыстырмалы түрде арзан конденсаторды қолдануға болады.

1 -қадам: Сізге не қажет

Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады
Сізге не қажет болады

- Raspbian орнатылған RaspberryPi. Сондай -ақ, мониторға, тінтуірге және пернетақтаның көмегімен немесе қашықтағы жұмыс үстелі арқылы Pi -ге кіру қажет. Сіз Raspberry Pi кез келген моделін пайдалана аласыз. Егер сізде Pi Zero модельдерінің біреуі болса, GPIO портына бірнеше түйреуіштерді дәнекерлеу қажет болуы мүмкін.

- Жарыққа тәуелді резистор (LDR немесе фоторезистор деп те аталады)

- 1 uF керамикалық конденсатор

- прототиптеудің дәнекерленген тақтасы

- Кейбір ерлер мен әйелдерге арналған секіргіш сымдар

2 -қадам: Схеманы құрыңыз

Сіздің шеңберіңізді құрыңыз
Сіздің шеңберіңізді құрыңыз
Сіздің шеңберіңізді құрыңыз
Сіздің шеңберіңізді құрыңыз

Жоғарыда көрсетілген тізбекті өзіңіздің тақтаңызға құрыңыз, оның құрамдас бөліктерінің ешқайсысы жанаспайтынына көз жеткізіңіз. Жарыққа тәуелді резистор мен керамикалық конденсатордың полярлығы жоқ, демек теріс және оң ток екі сымға да қосылуы мүмкін. Сондықтан бұл компоненттер сіздің тізбегіңізге қалай қосылды деп алаңдамаудың қажеті жоқ.

Электр тізбегін тексергеннен кейін, жоғарыдағы диаграмма бойынша Raspberry Pi GPIO түйреуіштеріне қосқыш кабельдерді мұқият қосыңыз.

3 -қадам: Деректерді оқу және тіркеу үшін Python сценарийін жасаңыз

Деректерді оқу және тіркеу үшін Python сценарийін жасаңыз
Деректерді оқу және тіркеу үшін Python сценарийін жасаңыз

Raspberry Pi құрылғысында IDLE ашыңыз (Мәзір> Бағдарламалау> Python 2 (IDLE)) және жаңа жобаны ашыңыз (Файл> Жаңа файл). Содан кейін келесіні теріңіз:

GPO ретінде RPi. GPIO импорттау

импорт уақыты импорт datetime loginterval = 60 #log интервал секундпен savefilename = «lightlevels.txt» SensorPin = 17 TriggerPin = 27

GPIO.setmode (GPIO. BCM)

cap = 0.000001 #1uf adj = 2.130620985

Өлшеу қарсылығы (мин, нүкте нүктесі):

GPIO.setup (mpin, GPIO. OUT) GPIO.setup (tpin, GPIO. OUT) GPIO.output (mpin, False) GPIO.output (tpin, False) time.sleep (0.2) GPIO.setup (mpin, GPIO). IN) time.sleep (0.2) GPIO.output (tpin, True) басталу уақыты = time.time () endtime = time.time () while (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () end-start-time def writeline (txt, fn): f = open (fn, 'a') f.write (txt+'\ n') f.close () i = 0 t = 0, ал True: stime = time.time () a (1, 11) диапазонында: res = (өлшенетін қарсылық (SensorPin, TriggerPin)/cap)*adj i = i+1 t = t+res a == 10: t = t/i print (t) writeline (str (datetime.datetime.now ())+«,»+str (t), savefilename) i = 0 t = 0, ал stime+loginterval> time.time (): #тіркеу уақыты болғанша күтіңіз өткен уақыт.ұйқы (0.0001)

Құжаттар қалтасында жобаңызды datalogger.py (Файл> Басқаша сақтау) ретінде сақтаңыз.

Енді Терминалды ашыңыз (Мәзір> Аксессуарлар> Терминал) және келесі пәрменді теріңіз:

python datalogger.py

Сценарий «lightlevels.txt» атты мәтіндік файл жасайды және оны әр 60 секунд сайын жаңартады. Сіз бұл файл атауын 6 -жолда өзгерте аласыз. Сондай -ақ, 5 -жолды өзгерту арқылы деректер тізілімінің жаңартылу жиілігін реттеуге болады.

Ұсынылған: