Compartelo en facebook

Menú del sitio
Noticias
Inicio » Artículos » Electrónica » Circuitos Básicos

Control de actuadores por puerto paralelo
Control por puerto paralelo

Bueno, lo primero a saber es que no se necesitan tener muchos componentes, pero eso si, mucho cuidado con la creación de los circuitos. Cualquier error que tengamos puede quemar el puerto de la PC y eso no resulta muy agradable....
 
La primer plaqueta aprovecha las 8 salidas y las 4 entradas del puerto paralelo y es la siguiente:


El esquema es muy simple, en la placa incorporamos una ficha DB25 Macho y 8 leds para testear las salidas y 4 pulsadores para las entradas. Las salidas se habilitan con jumpers (J2 a J9) y cada led tiene su resistencia de 220 Ohms.
 
Por supuesto que cada led puede ser reemplazado por un actuador diferente. Dicho actuador deberá estar convenientemente aislado del puerto paralelo ya sea por reles o por optoacopladores (Ej: MOC3020). En nuestro caso usaremos un rele y el esquema sería el siguiente:


Ante una entrada logica en TP1 (la cual conectaremos en el punto del led, el transistor 2N3904 energiza la bobina del rele con 12 voltios. La conmutación se hace entre TP2 y TP3. El diodo es de protección.

Advertencia: en la primera prueba de estos circuitos alimenté la segunda placa con 12 voltios extraidos de la fuente de alimentación de la computadora. Al principio funcionó perfecto, pero al dejar el rele energizado durante algún tiempo, la PC comenzó a reiniciarse. La solución fué usar una fuente independiente de 12 voltios para esta segunda placa.

Aquí van dos fotos de las plaquetas en cuestión:

 

Para programar usaremos el lenguaje Delphi en su versión 2010 y necesitaremos agregar a windows una librería especial para poder controlar los puertos. La libreria se llama inpout32.dll y esta disponible para descargar en la sección de Descargas. Para que funcione se debe instalar en las carpetas System y System32 del directorio de Windows. Ha sido probada con Windows XP.

El siguiente es un ejemplo de codigo para el uso de inpout32.dll en delphi:

unit main;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

procedure Out32(wAddr:word;bOut:byte); stdcall; external 'inpout32.dll'
function Inp32(wAddr:word):integer; stdcall; external 'inpout32.dll'


implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
      Out32($378,$53);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
       edit1.Text:=IntToHex(inp32($378),2);
end;

end.

Las partes en negrita son las declaraciones de las funciones internas de inpotu32 y las llamadas a dichas funciones en la implementación del código.


Categoría: Circuitos Básicos | Ha añadido: Patariki (2012-06-04)
Visiones: 2410 | Tags: DB25, Paralelo, rele, control | Ranking: 4.5/2
Total de comentarios: 0
Solamente los usuarios registrados pueden añadir los comentarios.
[ Registrarse | Entrada ]
Estadística

Total en línea: 1
Invitados: 1
Usuarios: 0
Sponsors



   

Búsqueda
Copyright Patariki © 2017Crear un sitio web gratis con uCoz