На пинах напряжение на "0" не сбрасывается!

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля
Благодарил (а): 54 раза
Поблагодарили: 61 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение Sapizdullin » Сб май 26, 2018 11:26 pm

Yashalta писал(а):
Сб май 26, 2018 12:55 pm
Сказал всем "Спасибо", понял, что нудно делать! На данный момент у меня нет резистора 4.7 kOm, найду поставлю, отпишусь!
ТОлько вопрос: Почему у меня напряжение на пине не сбрасывается на "0"! Ни где, не видел, в такой простой схеме как подключение светодиода к Raspberry, что бы люди еще добавочно "Подтягивали пин к земле через 4,7 КОм"!
Можешь любым от 10 кОм до 3,6 кОм. Должно работать. Если не будет, значит выходной транзистор не запирается... Тогда будем думать коллективным разумом. ;)
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Yashalta
Сообщения: 315
Зарегистрирован: Вс май 20, 2018 9:27 am
Благодарил (а): 160 раз
Поблагодарили: 29 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение Yashalta » Пн май 28, 2018 8:41 pm

Резистор еще не нашел, как найду так сразу и попробую..
Сегодня просто в скрипте поменял упарвляющий пин и на другом пине все работает! Даволен как слон!:)
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение xor » Пн май 28, 2018 11:19 pm

https://raspberrypi.stackexchange.com/q ... io-cleanup
The GPIO.setup(relayPin, GPIO.OUT) sets the GPIO as an OUTPUT. When an OUTPUT a GPIO is actively driven to 3V3 or 0V. The GPIO.cleanup() changes the GPIO to INPUT mode

Вы установили пин на вывод и тут же следующим шагом переключаете пин на вход.
В инпут моде полтора вольта болтается после клинапа, зачем клинап-то?
И подтяжки не причём))
За это сообщение автора xor поблагодарил:
Strangeman (Ср окт 24, 2018 8:38 pm)
Рейтинг: 1.16%
Yashalta
Сообщения: 315
Зарегистрирован: Вс май 20, 2018 9:27 am
Благодарил (а): 160 раз
Поблагодарили: 29 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение Yashalta » Вт май 29, 2018 8:00 pm

xor писал(а):
Пн май 28, 2018 11:19 pm
https://raspberrypi.stackexchange.com/q ... io-cleanup
The GPIO.setup(relayPin, GPIO.OUT) sets the GPIO as an OUTPUT. When an OUTPUT a GPIO is actively driven to 3V3 or 0V. The GPIO.cleanup() changes the GPIO to INPUT mode

Вы установили пин на вывод и тут же следующим шагом переключаете пин на вход.
В инпут моде полтора вольта болтается после клинапа, зачем клинап-то?
И подтяжки не причём))
попробовал по вашей инструкции, светодиод вообще не загоратеся! Пробовал на 2-х разных пинах! Возможно я ошибся с написание кода...
Этот вот у меня был на включение

Код: Выделить всё

# -- coding: utf-8 --
import RPi.GPIO as GPIO
relayPin = 26
GPIO.setmode(GPIO.BOARD)
GPIO.setup(relayPin, GPIO.OUT)
GPIO.output(relayPin,GPIO.HIGH)
sleep(1)
print("Light On!")
Этот у меня был на выключение

Код: Выделить всё

# -- coding: utf-8 --
import RPi.GPIO as GPIO
from time import sleep
relayPin = 26
GPIO.setmode(GPIO.BOARD)
GPIO.setup(relayPin, GPIO.OUT)
GPIO.output(relayPin,GPIO.LOW)
sleep(1)
print("Light Off!")
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение xor » Вт май 29, 2018 8:42 pm

В первом коде на включение вы используете sleep, а from time import sleep не пишете, это нормально?
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение xor » Вт май 29, 2018 8:58 pm

https://opensourceforu.com/2017/07/intr ... ng-python/
Такой код у вас работает?

Код: Выделить всё

import RPi.GPIO as GPIO
#for the sleep method
import time
led = 8
#set numbering mode for the program
GPIO.setmode(GPIO.BOARD)
#setup led(pin 8) as output pin
GPIO.setup(led, GPIO.OUT,initial=0)
try:
#turn on and off the led in intervals of 1 second
while(True):
#turn on, set as HIGH or 1
GPIO.output(led,GPIO.HIGH)
print(“ON”)
time.sleep(1)
#turn off, set as LOW or 0
GPIO.output(led, GPIO.LOW)
print(“OFF”)
time.sleep(1)
except KeyboardInterrupt:
#cleanup GPIO settings before exiting
GPIO.cleanup()
print(“Exiting...”)
Yashalta
Сообщения: 315
Зарегистрирован: Вс май 20, 2018 9:27 am
Благодарил (а): 160 раз
Поблагодарили: 29 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение Yashalta » Вт май 29, 2018 9:39 pm

xor писал(а):
Вт май 29, 2018 8:58 pm
https://opensourceforu.com/2017/07/intr ... ng-python/
Такой код у вас работает?

Код: Выделить всё

import RPi.GPIO as GPIO
#for the sleep method
import time
led = 8
#set numbering mode for the program
GPIO.setmode(GPIO.BOARD)
#setup led(pin 8) as output pin
GPIO.setup(led, GPIO.OUT,initial=0)
try:
#turn on and off the led in intervals of 1 second
while(True):
#turn on, set as HIGH or 1
GPIO.output(led,GPIO.HIGH)
print(“ON”)
time.sleep(1)
#turn off, set as LOW or 0
GPIO.output(led, GPIO.LOW)
print(“OFF”)
time.sleep(1)
except KeyboardInterrupt:
#cleanup GPIO settings before exiting
GPIO.cleanup()
print(“Exiting...”)
Я вставил ваш код в свой скрипт и светодиод вообще не реагирует! Я даже перезагрузил MajorDoMo и всеравно не работает!
ТОгда я в терминале решил ручками прописать каждую строку кода, что бы узнать на каком этапе "спотыкатеся" код...
Ниже результат.

Код: Выделить всё

pi@raspberrypi:~ $ sudo python
Python 2.7.9 (default, Sep 17 2016, 20:26:04) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import RPi.GPIO as GPIO
>>> import time
>>> led = 6
>>> GPIO.setmode(GPIO.BOARD)
>>> GPIO.setup(led, GPIO.OUT,initial=0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: The channel sent is invalid on a Raspberry Pi
>>> 
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение xor » Вт май 29, 2018 10:17 pm

Ну, возьмите свой код, когда получалось включить, и допишите:

Код: Выделить всё

import RPi.GPIO as GPIO
from time import sleep
pin=2
GPIO.setmode(GPIO.BCM)
GPIO.setup(pin, GPIO.OUT, initial=1)
print("test initial!")
sleep(1)
GPIO.output(pin, GPIO.LOW)
print("test LOW!")
sleep(1)
GPIO.output(pin,GPIO.HIGH)
print("test HIGH!")
sleep(1)
GPIO.output(pin, 0)
print("test 0!")
sleep(1)
GPIO.output(pin,1)
print("test 1!")
sleep(1)
GPIO.output(pin, False)
print("test False!")
sleep(1)
GPIO.output(pin,True)
print("test True!")
sleep(1)
GPIO.cleanup()
print("CleanUp!")
и посмотрите, как будет реагировать лед
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение xor » Вт май 29, 2018 10:45 pm

Код выше просто должен доказать вашу власть над пином, настроенным на вывод.
Если вам удалось его перевести в 1, убедитесь и в обратном.

Возвращаясь к коду установки в 0 в первом посте --
А комментить cleanup не пробовали?

ps. построчно проверять программу с циклом и метками переходов -- плохая идея
zoldaten
Сообщения: 158
Зарегистрирован: Вт авг 23, 2016 3:08 pm
Откуда: Москва
Благодарил (а): 5 раз
Поблагодарили: 22 раза
Контактная информация:

Re: На пинах напряжение на "0" не сбрасывается!

Сообщение zoldaten » Ср май 30, 2018 6:20 pm

Yashalta писал(а):
Пт май 25, 2018 9:19 pm
Sapizdullin писал(а):
Пт май 25, 2018 9:11 pm
Подтяни пин к земле через 4,7 КОм...
Не понял, сейчас у меня стоит резистор на 220 Ом, мне его нужно заменить на 4,7 КОМ или мне нужно добавть резистор 4,7 КОМ еще куда то?
ничего там подтягивать дополнительно не надо. просто ограничивающий резистор должен быть от 470 Ом.
почитайте С. Монк "Мейкерство. Arduino и Raspberry Pi. Управление движением, светом и звуком".
Raspberry pi3 на X820 с собственного образа MJD, broadlink rm mini3, sonoff basic, самодельные погодные станции и wi-fi розетки на esp8266 esp-01.физический robot-дворецкий.
Ответить