Страница 2 из 3

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

Добавлено: Сб май 26, 2018 11:26 pm
Sapizdullin
Yashalta писал(а):
Сб май 26, 2018 12:55 pm
Сказал всем "Спасибо", понял, что нудно делать! На данный момент у меня нет резистора 4.7 kOm, найду поставлю, отпишусь!
ТОлько вопрос: Почему у меня напряжение на пине не сбрасывается на "0"! Ни где, не видел, в такой простой схеме как подключение светодиода к Raspberry, что бы люди еще добавочно "Подтягивали пин к земле через 4,7 КОм"!
Можешь любым от 10 кОм до 3,6 кОм. Должно работать. Если не будет, значит выходной транзистор не запирается... Тогда будем думать коллективным разумом. ;)

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

Добавлено: Пн май 28, 2018 8:41 pm
Yashalta
Резистор еще не нашел, как найду так сразу и попробую..
Сегодня просто в скрипте поменял упарвляющий пин и на другом пине все работает! Даволен как слон!:)

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

Добавлено: Пн май 28, 2018 11:19 pm
xor
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

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

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

Добавлено: Вт май 29, 2018 8:00 pm
Yashalta
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!")

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

Добавлено: Вт май 29, 2018 8:42 pm
xor
В первом коде на включение вы используете sleep, а from time import sleep не пишете, это нормально?

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

Добавлено: Вт май 29, 2018 8:58 pm
xor
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...”)

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

Добавлено: Вт май 29, 2018 9:39 pm
Yashalta
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
>>> 

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

Добавлено: Вт май 29, 2018 10:17 pm
xor
Ну, возьмите свой код, когда получалось включить, и допишите:

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

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!")
и посмотрите, как будет реагировать лед

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

Добавлено: Вт май 29, 2018 10:45 pm
xor
Код выше просто должен доказать вашу власть над пином, настроенным на вывод.
Если вам удалось его перевести в 1, убедитесь и в обратном.

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

ps. построчно проверять программу с циклом и метками переходов -- плохая идея

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

Добавлено: Ср май 30, 2018 6:20 pm
zoldaten
Yashalta писал(а):
Пт май 25, 2018 9:19 pm
Sapizdullin писал(а):
Пт май 25, 2018 9:11 pm
Подтяни пин к земле через 4,7 КОм...
Не понял, сейчас у меня стоит резистор на 220 Ом, мне его нужно заменить на 4,7 КОМ или мне нужно добавть резистор 4,7 КОМ еще куда то?
ничего там подтягивать дополнительно не надо. просто ограничивающий резистор должен быть от 470 Ом.
почитайте С. Монк "Мейкерство. Arduino и Raspberry Pi. Управление движением, светом и звуком".