Encender/apagar luz con control remoto

tengo una gran duda....

y el problema que me prestaba solventando biendo como envia el mano de pinacle este clasico que el receptor lo conectabas al puerto rs232. el circuito creo que era algo muy sensiyo.. pro la verdad que no se donde lo tengo (no lo encuentro por el pc).

pero bueno la custion.. cuando rtrasmites informacion por el puerto 232 es obligatorio el bit e separacion de las caenas e 8 bit...¿?¿?¿? o solo lo es en el 16f628 para entrar en la interruccion???

aunque deveria estar acuendo alguna practica mas que tanto curiosear aaver si veo algo que me de una iea o tanta pregunta.. (pro que poca moral)..

un saludo

Hola amigo no entiendo lo que te coloco en negrita, si me lo puedes indicar, para poder entender mejor a lo que te refieres gracias
 
Le entiendo porque tengo un pinacle viejo.

Es un grabador capturador de vídeo y puedes ver la televisión en el ordenador o PC mediante esa tarjeta PCI.

Te viene un mando muy parecido a un TV y te viene un sensor de ingrarrojos por puerto serie o USB según modelo para controlar los canales.

Se refiere el cable infrarrojo conectado al puerto serie.

Por lo que entiendo es hasta ahí. Ya me corregirá si me equivoco.
 
me refiero quue el receptor e ese mando a distancia lleva un circuito muy simple y no solo funciona para ese mando sino que hay un programa y te sirven pila de mandos..

la cuestion es.. (que tampoco tengo muchas practicas echas con el rs232). se supone que el puerto 232 rcoje los pulsos por trenes de 8 en 8 con un bit de parada entre ellos.. o es que no es relativamente obligatorio??
y en el 16f628, es necesario dar el bit de intervalo cada 8bit o nada mas llenar los 8bit ya te salta ala interruccion automaticamente pudiedola mter asi enuna bariable y prepararlo agando leches para los siguientes 8bit.

la verda que teni que tar liandome aciendolo.. pero que o tengo mucha moral. casi prefiero estar un poco de chachara. jjejeje.

la idea es evitarme ese programa que tengo para la lectura e infrarrojos cosa que come su tiempo y si puede acerlo el pic por hardwar pues casi que tanto mejor.
pongamos que asi solo hay que meter las baribles rapidamente gracias ala interrucion rx y poder dedicar el programa a otras funciones mas necesaria.

un sladulo y siento ser tan inlejeble devez en cuando. pero que vamos tan dificir de leer no era.

y si meta es un mando a distancia de esos y el receptor
 
exacto.. que de paso agra que guardarlo de nuevo.. jejje
si es el que me mandaste http://www.instructables.com/id/IR-Receiver-for-Infrared-Capture/step2/Assembly/

y se supone que por el puerto 232 reconoceria el tren de pulsos de 32bit.. no necesitaria el intervalo que esiste entre cada 8bit. vamos el bit de parada o 2 bit de parada..???

y bueno estuve pelendome un poco mirando y traduciendo la informacion del 16f628 sobre la parillas tx rx, en particular seria la rx. pero no o no tradujo muy bien el google. se supone que la interruccion se ativa spues el 8bit incluso configurarlo para el 9bit..
pero dara tiempo a entrar en la interruccion mover el rcreg (que tampoco e manejado nunca eso)..

nose pasito a pasito a ver si me pongo y miro algunos cachos de programa ya echos que aya por aqui para comunicarse por 232

un saludo.



miento el circuito tien un lijero fallo. el conensador va ala entrada del 7805 y en su salida uno de 100nf. la resistencia no es necesaria, pero tampoco esta mal dependera del receptor de infrarrojo si lo puede necesitar o mas bien del puerto 232 si requiere un pulso alto de 12v pero abria que poner tambien una resistencias de 100 o 56ohmnios para proteger el receptor.

y bueno la vrad que al final decidi.. que en estos temas un dibujo dice mas que mil palabras.. jjeje

un saludo
 

Adjuntos

  • receptor infrarrojo rs232.jpg
    receptor infrarrojo rs232.jpg
    21.7 KB · Visitas: 33
Última edición:
Con el RS232 puedo soltar pulsos, puedo hacerlo, parece fácil. Luego al recogerlo no será tan fácil. ejjeje.

Por ejemnplo.
Si es en C.

Los datos recogidos del puerto serie se guarda en una variable, por ejemplo, llamado recibido.

Luego haces algo como esto:

While(recibido)
{
CASE 0x4F758BCF:
public rele1();

CASE 0x4F758BCF:
public rele2();

CASE 0x4F758BCF:
public rele3();

Default;
public ignorar();
}

Todo ello con puerto serie tal como ustedes indican arriba con el esquema.
 
Última edición:
peep387 el condensador si esta bien de echo en la hoja de datos del receptor ir lo sugiera para evitar las perturbaciones igual la resistencia de 100ohm para la alimentación, y otra cosa hay dos maneras de comunicarse vía serial una usando los pines de rx y tx del pic por hardware y otra es emulando la comunicación por código que seria el caso de mi código.
 
Buenas gente. Mi idea es diseñar los circuitos de emisor y receptor(o en su defecto el receptor) para hacer un control remoto de unos 5 canales

Encontré este: http://www.pablin.com.ar/electron/circuito/varios/ir1ch/index.htm pero es de 1 solo canal. ¿Cómo podría "estirarlo" por así decirlo a 5? ¿Tendría que mandarme a uno que use PIC's?

Hola tendrías que codificarlo y decodificarlo con el pic, aunque otra manera que vi es con los integrados HT12X, Tendrías que revisar cual te sirve para tu aplicación.
 
en realidad me sirve cualquiera, la idea es que ande. jajaja Vi un kit en Mercado Libre de un control de 3 canales que usa el PIC 12F629, se ve bastante simple, pero lo malo es que no está el circuito en ninguna parte. D:

También vi este circuito, pero dudo que pueda funcionar esta demasiado...pelado :LOL:

http://www.infrarrojos.net/proyectos12c508/PICdecosony5.html

La única que queda es arriesgarse y probar hacerlo.

Nunca he encontrado código fuente de ese PIC.
Parece qu eno lo han puesto.
 
si reyvilla, me refiro a configurar configurar el terminal rx ddel 16f628 para poder entrar en una interruccion rapiamente a por los bytes del mano. estuve mirano un poco mas ayer el dataseet del 16f628 la parte del demodulador serial. tengo que ponerme a ello. aunque me pile un cacao pensando en como activarlo y preparar que funcione ien la interruccion. bufff. (y eso que son pic asi no muy complejas).

y si el circuito ese esta mal. el fabricante aconseja tenerlo e esa manera para ser mas estable la corriente el receptor, pero si lo pones ala salida del 7805 solo se carga con 5V y lo peor que le daria retroalimentacion al 7805, por eso se coloca ala entrada, no solo aces que el conensador pueda cargar los 12V sino que espues el 7805 a aprovechar mejor es esceente e voltaje estaviliando mejor su salida (oporlomenos durante un intervalo mayor de tiempo)
y la resistencia se pone en ese punto tato que algunos puertos 232 de ordenaores trabajan con pulsos de 12V (a que el tren de pulsos se acople mejor al puerto) el condensador de 100nf la verdad que no es necesario... pero el conensador electrolitico si que va ala entrada del 7805 pero mejorar su eficiencia.

reyvilla tengo que postear un programa que disñe aunque todavia no prove a ver que te parece su estructura. esta claro que no funciona y hay que ajustarle los valores. que todo eso sra poco a poco. le escrivo mas tarde mas indicaciones de que es lo que ago en ciertas partes y denoche lo suvo. me gustaba alguna critica constuctiva que pueda mejorarlo.. aunque lo veo vastante guay (ahora siempre presta otra opinion)

un un placer y un saluo.
 
Buenas de nuevo, me puse a desarmar los controles remotos de algunos aparatos en mi casa (nene malo :p). Bueno, la cuestión es que todos, pero todos los que abrí( unos 6) tenían el integrado PT 2221. Así que me puse a buscar y encontré el circuito del emisor (el control remoto )

PT2221-circuits.jpg


En base a otros circuitos que vi, voy a buscar la forma de aplicar este integrado, que al parecer es muuuy usado por lo que creo que tampoco sería difícil de conseguir.

Voy a empezar a experimentar y cuando tenga algo que medianamente funcione lo posteo acá ;)
 
si la verdad que no esta mal mirar dntro.. pero piensola de otra manera, yo no es el primer mando que tengo que desmontar y mirar que moelo es para despues saver que coigo buscar en el mando universal..
vamos que ya puede ser una tv futaba que igual el integrado que usa es un philips o el pt2221
http://www.datasheetcatalog.org/datasheet/PrincetonTechnologyCorporation/mXrzxus.pdf
que la verdad es vastante escasa la informacion de como mandan el tren pulsos.
lo bueno que tendra que sera un modelo smd y pila pequeño..

pongamos que me quee el integrado que funcionava lo que no ivan bin eran los contactos para tras aparte e estar un poco roto, el modelo philips saa3010p que sera e los mas biejos..

pero despues te metes en otra que necesitarias el receptor o acerlo con un pic.
pon que hay muchos modelos. una tienda em particular e internet.. (casi que la que mas me gusta)

http://micropik.com/pag_ci_cir_int_diver.htm
en esta seccion vete a los MC145026, MC145027, MC145028. seguro que te son muy interesantes

un saludo



. y porcierto.. espero no aver cometido muchas faltas en las indicaciones..

y bueno la verad que no se como meterlo dentro de una ventanita como vosotros que no molesta tanto ala hora de verse... pero bueno aqui quedara la pedazo tirada..

'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : peep387 *
'* Notice : Copyright (c) 2012 buffff *
'* : All Rights Reserved *
'* Date : 20/02/2012 *
'* Version : 1.0 *
'* Notes : dimer 220ac por infrarrojos y rosca de pasos *
'* : control de disporo del triac por tmr0 *
'****************************************************************


define osc (8)
intcon = %00000000
rosca Var byte ' defino bit rapidos para la rosca de pasos
b0 var rosca.bit0
b1 var rosca.bit1
b2 var rosca.bit2
b3 var rosca.bit3
infra var byte ' defino los bit fiables el infrarrojo como 1 del infrarrojo
b4 VAR infra.bit7
b5 VAR infra.bit6
luz var byte
tecla var byte
temp1 var byte
temp2 var byte
codigo var byte[3]
clear
portb=0
trisb=%00000001
porta=0
trisa=%10000
luz=170
pause 100 ' los suelo poner al inicio (para que no vaya nada mas dar corriente)
option_reg = %11000101 ' definimos variables y puertos inicio
ON INTERRUPT GOTO disparo
intcon = %10010000
'
' programa
'
programa:
b1 =portb.6
b2 =portb.7
if b1=b2 then b0=b1: b3=0
if rosca=%00000100 or rosca=%00000011 then ' paso en un sentido
b3=1
tecla=1
goto acciones
endif
if rosca=%00000010 or rosca=%00000101 then ' paso sentido contrario
b3=1
tecla=2
goto acciones
endif
if porta.4=1 then programa
'
' lectura infrarrojos
'
infra=0
tecla=0
while porta.4=0 ' leemos el largo del pulso de inicio codigo
pauseus 4
infra=infra+1
wend
if infra<200 then programa ' si es menor seguro no sirva se sale
high portb.5 ' indicacion
for temp2=0 to 3 ' almacenolos 4 bite del codigo
for temp1=0 to 7 'introduce bit a bit en el bite
' en esta parte intento simular el comando pulsin
while porta.4=1
wend
codigo[temp2]=codigo[temp2]<<1 ' desplaza los bit ala izquierda = multiplicar *2
infra=0
while porta.4=0 ' cuenta el largo el pulso
infra=infra+1
if infra>170 then programa ' si desvorda se pira
wend
if infra<40 then programa ' si es inferior se pira al inicio
' PULSIN PORTa.4,1, infra
codigo[temp2]=codigo[temp2]+(b4|b5) 'suma el bit largo (el tiempo es relativo al infrarrojo o estado de la pila)
next temp1
next temp2
' comprueva el codificador 2x8bit y compara el codigo del boton (3ºcodigo)con su invertido (4ºcodigo)
if codigo[0]<>250 or codigo[1]<>5 then programa ' comprueva el codigo
if codigo[2]+codigo[3]<>255 then programa
tecla=codigo[2]
low portb.5
'
' comprovacion del bonton del infrarrojo
'
if tecla=3 then ' paso brusco de stado del nivel de luz
SELECT CASE luz
CASE IS > 100
luz=0
CASE IS < 101
luz=254
END SELECT
endif
if tecla=4 then toggle porta.0 ' activa desactiva reles
if tecla=5 then toggle porta.1
if tecla=6 then toggle porta.2
if tecla=7 then toggle porta.3
if tecla=8 then ' tecla apagar todo
porta=%0000
luz=0
endif
pause 1000
acciones: ' este salto me ahorra programa
if tecla=1 and luz<194 then luz=luz+1
if tecla=2 and luz>1 then luz=luz-1
tecla=0
goto programa
'
'
' interruccion
'
' sincroniza con la red y dimer retardado por tmr0, disparo triac
'
DISABLE
disparo:
if option_reg.6=0 then ' se marca un stop para el flanco descendente
option_reg.6=1
intcon.1=0
low portb.4
endif
if intcon.2=1 then ' dispara triac al desvordar tmr0
high portb.4
option_reg.6=0
intcon=%10010000
endif
if intcon.1=1 then ' sincroniza tmr0 en el flaco ascendente b.0
intcon=%10110000
tmr0=luz
endif
RESUME
ENABLE
' mi intencion en la interrucion es de primeras b.o interruccion preparada
' para el flaco ascendente, una vez entra en la interruccion por flanco
' ascendente invertimos para entrar en el flanco descendente y al mismo tiempo
' activamos la interrucion pmr0 para el disparo del triac, si entramos por
' el desvordamiento de tmr0 disparamos el triac si entramos por el flanco
' descendente de b.0 paramos la interrucion tmr0 y volvemos a invertir la
' interrucion b.0 para entrar denuevo en el flanco ascendente y vuelta aa empezar
' y espero que entre y salga lo suficiente rapido e la interrucion como
' para que no moleste al resto de funciones (o revienta todo) jajajjajaja

pon que tampoco es tan grane el programa una ve compilado ocupà 541word (todavia me sobra para la rutina de leer un mando con codificacion nec y meterlo en la epron.

que porcierto el canvio que octe por acer sustitullendo pulsin por esos while en la verdad que ocupan menos word el pic porlocual tenria que operarlo mas rapido.. lo suficiente como para analiar un desbordamiento o escasec del bit..

un saludo y espero alguna critia sobre como estructure eso.. (que ultimamente toy usano mucho esa forma)

un saludo
 
Última edición:
Atrás
Arriba