N

NiicoCR7

Usuario (Ecuador)

Primer post: 29 ene 2013Último post: 30 ene 2013
2
Posts
0
Puntos totales
3
Comentarios
D
Domotica casera
Hazlo Tu MismoporAnónimo1/29/2013

hola en mi primer post queria compartir lo que es la domotica para los aficionados de la electronica e informatica... bueno.... para realizar este proyecto necesitaras los siguientes recursos: Visual basic 10 o 6 (recomiendo el 10 y es el q trabajo yo) ISIS Proteus Hyperterminal virtual ports(programa para obtener puertos virtuales) microsoft acces(si deseas guardar alguna contraseña es opcional) MikroC Winpic800 (trabaja en solo en windows xp, puede ser e otro te recomiendo) Estos son los programas necesarios para el proyecto... ahora los materiales: Quemador de Pic PIC16F877A oscilador de 4mhz puerto serie macho y hembra2 capacitores de 33pf MAX232 4 capacitores de 10uf/50v 4reles / 4 trancistores 2n3904 / 6 resistencias de 1k 6 diodos led (o los que quieras poner) 8 diodos rectificadores MODEM GSM(el que quieras puede recomiendo el de internet modem huawei que trabaja en puertos COM de la pc y que funcione en HYPERTERMINAL) si quieres hacer una fuente de 12 y 5v que lo recomiendo para el circuito: puente rectificador capacitor de 1000uf/50v reguladores 7805/7812 transformador de 12v 500mA EL PROYECTO SE DIVIDE EN LOS SIGUIENTE: programa de control en visual basic10 programa en MIKROC diseño de circuito en proteus para lo que es fisicamente diseno del pic fuente de voltaje modulo de reles ok es lo que necesitas para realizar tu hogar digital a continuacion en DOMOTICA CASERA 2 veras el diseno de las practicas(hasta que compren los materiales) PILAS CON este post es muy bueno!!! el que viene sera mejor!

0
6
Domotica casera parte2
Domotica casera parte2
Hazlo Tu MismoporAnónimo1/30/2013

hola 2do post !! aqui aprenderas como hacer una practica en proteus y una prueba de como usarlo para automatizar tu hogar 1 arma tu circuito en proteus: 2 luego de esto programa en MIKROC cuando abrimos el proyecto la senal de reloj es 4 Mhz 3 Abrimos el VirtualPorts aquie el link de descarga: http://free-virtual-serial-ports-emulator.softonic.com/descargar escojemos pair para hacer prueba con proteus. los puertos seran 1 y 2 aceptamos y abrimos en hyperterminal y escojemos puerto 1 con velocidad de 9600 luego en proteus lo siguiente: damos doble click en el puerto serie y escojemos el puerto 2 lo mismo hacemos en el pic para escojer el archivo hex que contiene la programacion en mi caso se llama MyProject.hex En resumen aqui vemos que se prende la LUZ1 CON UN "a" y apaga con un "b" en el hyperterminal... ahora aprenderemos como armar en visual basic10... usaremos un elemento que nos permite recibir y enviar datos en visual que se llama "SerialPort" en nuestro form y armamos la interfaz asi: ahora la prueba en proteus: codigo fuente vb Public Class Form1 Function obtenerPuertosSeriePC() As List(Of String) Dim puertosSerie As List(Of String) puertosSerie = New List(Of String) Try puertosSerie = New List(Of String) For Each puertosSerieObtenidos As String In My.Computer.Ports.SerialPortNames puertosSerie.Add(puertosSerieObtenidos) Next obtenerPuertosSeriePC = puertosSerie Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical + MsgBoxStyle.OkOnly) obtenerPuertosSeriePC = puertosSerie End Try End Function Private Sub OBTPIC_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btObtenerPuertos.Click, OBTPIC.Click Dim puertosSerie As List(Of String) Dim i As Integer txtPuerto1.Items.Clear() puertosSerie = obtenerPuertosSeriePC() For i = 0 To puertosSerie.Count - 1 txtPuerto1.Items.Add(puertosSerie(i).ToString) Next If txtPuerto1.Items.Count >= 1 Then txtPuerto1.Text = txtPuerto1.Items(0) Else txtPuerto1.Text = "" End If If puertosSerie.Count = 0 Then MsgBox("No se han detectado puertos serie en su equipo, " + "asegúrese de que están correctamente configurados.", MsgBoxStyle.Information + MsgBoxStyle.OkOnly) End If End Sub Private Sub CONPIC_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CONPIC.Click If txtPuerto1.Text = "" Then MsgBox("Ingrese el puerto de conexión. ", MsgBoxStyle.Information + MsgBoxStyle.OkOnly) Else CONPIC.Enabled = False System.Threading.Thread.Sleep(1000) SerialPort1.PortName = txtPuerto1.Text SerialPort1.BaudRate = 9600 SerialPort1.Parity = IO.Ports.Parity.None SerialPort1.DataBits = 8 SerialPort1.StopBits = IO.Ports.StopBits.One SerialPort1.Open() DesPIC.Enabled = True labelconexion.Text = "Puerto serie (COM) con PIC CONECTADO" labelconexion.ForeColor = Color.Green BtnON1.Enabled = True End If End Sub Private Sub BtnON1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnON1.Click SerialPort1.Write("a" ) BtnON1.Enabled = False BtnOFF1.Enabled = True PictureBox1.Image = My.Resources.luz1uno End Sub Private Sub BtnOFF1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnOFF1.Click SerialPort1.Write("b" ) BtnOFF1.Enabled = False BtnON1.Enabled = True PictureBox1.Image = My.Resources.luzoff1 End Sub Private Sub DesPIC_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DesPIC.Click SerialPort1.Close() DesPIC.Enabled = False CONPIC.Enabled = True labelconexion.Text = "Puerto serie (COM) con PIC DESCONECTADO" labelconexion.ForeColor = Color.Red BtnON1.Enabled = False BtnOFF1.Enabled = False End Sub End Class TERMINADO aqui es todo !! por ahora ya tienes para encender una luz con tu PC facilmente puedes incrementar tu codigo para mas leds en proteus! aqui un enlaze de un video de lo mismo pero hecho en visual 6 [size=18]Ahora con esos avanzes veremos como con un modem prenderemos el mismo foco necesitas un modem obviamente ... recomiendo el huawei para q no tengas inconvenientes con los Comandos AT[/size] OK !! QUE SON LOS COMANDOS AT: los comandos AT sirven para comunicarte con un modem pues te perimitira acceder a el y realizar acciones desde tu pc ... las pruebas se pueden hacer en HYPERTERMINAL o cualquier otro que pruebe los puertos serie Los comandos que debes usar son los siguientes: AT+CMGF=1 (es el comando q permite trabajar en formato texto, pdu es 0, necesitas el comando para recibir los mensajes en texto si no te salen puros numeros) AT+CNMI=1,2 (es el comando que recibe los mensajes y los lees, si no te saldra en una posicion es decir que cuando recibas el mensaje te llegara en la posicion 5de tu bandeja de entrada) AT+CMGF="notelefono" enter > mensaje Controlz si deseas enviar un mensaje de texto.. prueba: ahora agregale algunos detalles a tu form y mira la prueba ok este diseño de encendido por sms consiste en tener 2 codigos uno para encender y otro para apagar el mensaje llega en un formato... tu tienes q eliminar ese formato para que te quede solo el mensaje el mensaje se compara con los codigos que tu eliges en este caso es C1 Y C2 al comparar el mensaje realizara la accion de encendido o apagado ... aqui la prueba: CODIGO Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles obtpuertoModem.Click Dim puertosSerie As List(Of String) Dim i As Integer txtpuertoModem.Items.Clear() puertosSerie = obtenerPuertosSeriePC() For i = 0 To puertosSerie.Count - 1 txtpuertoModem.Items.Add(puertosSerie(i).ToString) Next If txtpuertoModem.Items.Count >= 1 Then txtpuertoModem.Text = txtpuertoModem.Items(0) Else txtpuertoModem.Text = "" End If If puertosSerie.Count = 0 Then MsgBox("No se han detectado puertos serie en su equipo, " + "asegúrese de que están correctamente configurados.", MsgBoxStyle.Information + MsgBoxStyle.OkOnly) End If End Sub Private Sub btConectar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btConectar.Click Try If DesPIC.Enabled = False Then MsgBox("Antes de conectar con el puerto serie modem " & "debe conectar el puerto serie " & "del Microcontrolador.", MsgBoxStyle.Information + MsgBoxStyle.OkOnly) Else SerialPort2.PortName = txtpuertoModem.Text SerialPort2.BaudRate = 9600 SerialPort2.Parity = IO.Ports.Parity.None SerialPort2.DataBits = 8 SerialPort2.StopBits = IO.Ports.StopBits.One SerialPort2.Open() DesModem.Enabled = True btConectar.Enabled = False LabelConexionModem.Text = "Puerto serie (COM) con modem CONECTADO" LabelConexionModem.ForeColor = Color.Green End If Catch ex As Exception MsgBox("Error al abrir el puerto serial: " & ex.Message, MsgBoxStyle.Critical) End Try BtnON1.Enabled = True End Sub Private Sub DesModem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DesModem.Click SerialPort2.Close() DesModem.Enabled = False btConectar.Enabled = True LabelConexionModem.Text = "Puerto serie (COM) con Modem DESCONECTADO" LabelConexionModem.ForeColor = Color.Red BtnON1.Enabled = False BtnOFF1.Enabled = False End Sub Private Sub compPuertoSerie_DataReceived(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) _ Handles SerialPort2.DataReceived Dim resultadoModemGSM As String Try 'Obtener el resultado devuelto por el puerto serie resultadoModemGSM = SerialPort2.ReadExisting.Trim().ToString If txtResultado.Text <> "" Then txtResultado.Text = txtResultado.Text + vbCrLf + resultadoModemGSM Else txtResultado.Text = resultadoModemGSM End If txtResultado.ScrollToCaret() longitud.Text = Len(txtResultado.Text) If Len(txtResultado.Text) >= 47 Then SMS.Text = Mid(txtResultado.Text, 48, Len(txtResultado.Text) - 47) NOMBRE = Trim(SMS.Text) NOMBRE = Replace(NOMBRE, vbCrLf, " " ) NOMBRE = Replace(NOMBRE, vbCr, " " ) If Trim(NOMBRE) = (C1.Text) Then SerialPort1.Write("a" ) BtnON1.Enabled = False BtnOFF1.Enabled = True PictureBox1.Image = My.Resources.luzoff1 End If If Trim(NOMBRE) = (C2.Text) Then BtnON1.Enabled = True BtnOFF1.Enabled = False SerialPort1.Write("b" ) PictureBox1.Image = My.Resources.luzoff1 End If System.Threading.Thread.Sleep(5000) txtResultado.Text = "" Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical + MsgBoxStyle.OkOnly) End Try End Sub End Class AHORA AGREGALE UN TEMPORIZADOR PARA QUE ENCIENDAS EL FOCO A LA HORA QUE DESEES revisa el post con este enlace de los materiales

0
0
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.