PLC Industrial con PIC

Los PLC si son elevados como elevados es la programaciónde los PIC aunque sea en C. Hay ventajas y desventajas. Cada cierto tiempo se fabrican PLC nuevos y no creo que lo hayas probado todos. He dado muchas marcas de PLC, por cada dos años sacan algunos nuevos y son más estables, los PLC también evolucionan.

Bueno en eso del tiempo de programacion tienes razon, pero hay una opcion con la que yo programo,puedes programar en minutos de manera similar a la del lenguaje ladder, el lenguaje se llama FUP y puedes dibujar una circuiteria interna con compuertas temporizadores contadores flip flop,lcds,multiplexores,entradas analogicas, salidas pwm etc,etc de manera similar a la de un plc dale una mirada el softare se llama parsic y tiene para programar 50 tipos de pic solo se necesita saber algo de electronica digital para aprender a usarlo :D,lo eh probado al 100% y todo es genial


intdemo.gif
Parsic.jpg
 
Última edición:
Si señor, ese tipo de cosas que pusiste de imagen es lo mejor. En el 2008 estaba en la punta de mira de hacer algo parecido para los 18F con Visual Studio .net

Por falta de conocimientos en los PIC en asm en aquella época y .net no me es posible, excepto tonterías de encender y apagar Led.

Viendo a la gente, no les interesa mucho esta idea aunque sea buena, prefieren asm y C directamente.

Hay muchas funciones sobre todo lo PIC16F nuevos que puedes ver aquí.
 
Si señor, ese tipo de cosas que pusiste de imagen es lo mejor. En el 2008 estaba en la punta de mira de hacer algo parecido para los 18F con Visual Studio .net

Por falta de conocimientos en los PIC en asm en aquella época y .net no me es posible, excepto tonterías de encender y apagar Led.

Viendo a la gente, no les interesa mucho esta idea aunque sea buena, prefieren asm y C directamente.

Hay muchas funciones sobre todo lo PIC16F nuevos que puedes ver aquí.
Meta corrigeme si me equivoco...¿estas diciendo que estabas creando un programa similar al que puse en imagenes?, ¿pero para la serie 18f?, el software que mostre solo tiene para grabar las series 16f y series 12 pero no hay para la serie 18f, debido a esto solo se puede hacer somunicacion rs232 mas no comunicacion usb :unsure:
 
Si, estaba y estábamos algunos. Escogimos los 18F porque tiene USB 2.0, sólo por eso. De prueba era con el 16F84A por ser fácil y conocido.

Fíjate en los registros del 18F4550.
http://ww1.microchip.com/downloads/en/devicedoc/39632c.pdf

Fíjate del 16F84.
image003.gif


Estas cosas abajo hay que hacerlas bien, el problema que requiere muchísimo tiempo.

esq3.jpg


Fíjate en la foto arriba por ejemplo el registro STATUS. Tiene 8 bits y hay qu emodificar entre 1 y 0 en su interior.

La idea es crear componentes que añadimos en el formulario de Visual Studio aunque sea un temporizador muy fácil y que genere el archivo .asm. Luego con el MPLAB compila al .hex.

No es tan dificil hacerlo. Lo que es complicado entender todos los registros de un PIC18F4550 y imagínate lo que tardarías con PIC diferentes. Así que lo dejé porque la gente van aprender asm y C y por falta de conocimientos que ahora estoy adquieriendo poco a poco en cursos de programación de lenguajes estructurados en un ciclo superior.

No es difícil de hacer, si muy laborioso, mucho tiempo y hay que tener ganas.
 
Última edición:
andrumic23, muy bueno escuchar alguien con experiencia en el tema PLC. Me gustaría si puedes y tienes tiempo me expliques como funciona la fuente de tu proyecto para poder meter la idea en mi proyecto de PLC.

Meta: Como vos bien sabes a veces poner en práctica un proyecto, especialmente uno de gran envergadura como puede ser un PLC industrial puede ser muy complejo y largo de desarrollar. Lo que hace falta muchas veces es tiempo ....algo de lo que yo sencillamente carezco. En mis tiempos libres le estoy dando el tiempo que se merece al tema del USB..control por internet...microcontroladores AVR....etc.. pero se hace lento todo por que tengo...como toda persona normal ...otras actividades aparte de la electrónica que me hacen que me retrase en mis proyectos.

Les dejo el avance de mi proyecto, espero les guste...por supuesto no está terminado y falta terminar más módulos.

Por el momento tengo listos algunos módulos:

- Circuito de Video.
- Circuito de memoria SD.
- EEPROM y relog de tiempo real.
- 8 x salidas digitales.
- RS232,RS485,USB.

......falta mucho por terminar...pero se está avanzando de a poco.
 

Adjuntos

  • plc.pdf
    424.2 KB · Visitas: 344
Hace un año desarrolle un plc en AVR con 8 entradas analógicas, 8 entradas digitales, 8 salidas digitales, no recuerdo si 8 timers configurables tambien, y 16 solenoides virtuales internos.
Para programarlo, no habia que tocar el codigo, puesto que el diagrama escalera se programaba en EEPROM y podia guardar no recuerdo si 128 o 256 escalones de circuito con 4 dispositivos en cada uno.
No posteare el códico puesto que no recuerdo donde quedo. Digamos que probablemente fue victima de una limpieza descuidada.
¿entonces a que viene mi comentario? Pues que a mi punto de vista, el programa se tendra que desarrollar en assembler para poder duplicar el timer virtualmente y hacer el proceso de los escalones de forma rápida y continua. Una de las cosas que aprendi, es que la forma de codificar los escalones para que lo lea el microcontrolador, es muy crítico.
Lo que hacia yo, era codificar los escalones primero, despues generar la tabla lógica de dicho escalon, y así guardarla en la eeprom. De esta forma se puede hacer el proceso del escalón rapidamente con apuntadores y no procesar cada caso en tiempo real. Dio excelentes resultados puesto que los accesos a eeprom se minimizaron.
El desarrollar el programa que capture los escalones, los codifique y despues los envie a la eeprom del micro, tambien es otro trabajo mas informatico que electronico. Ese si lo hice en C, aunque rudimentario, por que ya tenia el tiempo encima para presentar el prototipo.
No requeri herramientas especiales de software, ni mucho menos conocimientos adicionales que no fuera microcontroladores, instrumentacion básica, y C para el programa windows que codificaba la escalera.
Lo demás que se ha mencionado, solo es para tratar de eviarse el problema de de lidiar con assembler.
Saludos.
 
Cada vez que intento dar ideas de un PLC a la gente de la calle que saben PLC, me dicen que hacer PLC con PIC o otro micro es una pérdida de tiempo por el tipo de lenguaje que usa, asm y C. ¿Por qué reinventar la rueda?

Digan lo que digan, el PLC lo voy hacer pero es de Internet por puerto serie. Estoy esperando lo del USB a Moyano que mucho ha hecho para la comunicación con el PIC y PC. Es decir, meteré al PLC con RS232 y USB para que escojan. Aquí estaba un tiempo preparando una Interfaz sencilla pero la de internet lo mejoraré.

http://electronica-pic.blogspot.com/2010/05/probando-interfaz-picrs232-v2-puerto.html

Hacer un PLC serie cuesta mucho tiempo investigando y desarrollando a parte el coste. Lo haré y porque me hace ilución.

Hicieron hasta un PLC con el PIC16F84A como ya indiqué arriba.

http://www.msebilbao.com/tienda/product_info.php?products_id=454

Hay más gente que lo han hecho, mira aquí.

http://electronica-pic.blogspot.com/2010/11/construccion-de-un-plc-con-pic.html

El mio se trata de controlarlo tal vez con 16F887, 18F4550 que es adaptarlo he hecho pruebas y funciona (me costó pero funciona) o tal vez con el 16F88 con los módulos de entrada/salida PCF8574 ya que un PIC de 40 pines es insuficiente. Claro que tendrá su LCD 20x4 Hitachi y su reloj/calendario DS1307 en tiempo real.

ET-MINI_DS1307.jpg


En resumen.

Control por Internet mediante Interfaz y por vía Web con PLC con:


  • Salida digitales.
  • Entradas Digitales.
  • Algunas entradas analógicas.
  • Disponibilidad sensores de temperatura para el DS18S20
  • Por ahora será por puerto serie y me funciona. (Con ayuda de Moyano se incluirá el USB).
  • LCD 20x4 HD44780 Hitachi.
  • Reloj/Calendario DS1307.
  • Usando Bases de datos que por ahora es MySQL para registrar datos (Data Loger) de qué está ocurriendo en cada hora, fecha, usuario, están usando el PIC a distancia. Preparé el pirmer manual sobre instalar servidor Web casero para poder hacer el segundo, ejjeje.

Hacer este tipo de cosas bien hechas llevo desde el 2008, no he acabado porque se me quemó una época componentes y me cabreé a parte de falta de presupuesto.

En estos momentos estoy haciendo el temporizador y adaptarlo del 16F84A al 16F88 que no logro que me funcione porque han cambiado el registro hasta dentro de todo y requiere mucho tiempo leer los DataSheet uno del otro. Este temporizador que hago es para hacer una insoladora scaner casera ya que me hace falta para hacer PCB no solo para mi, sino para clientes. Ya les enseñaré el proyecto.

Si van hacer un PLC, adelante. Hay que tener muy claro que los PLC tienen que quitarse los ruidos sea como sea.


Saludo.
 
Por eso no me gusta mucho participar en estos proyectitos, por que al ultimo acaban haciendo algo ya hecho y el trabajo del resto por ayudar, se va al caño.
Nomas avisa si el plc dichoso no explota. Así los demas que sigan este hilo sabran si tomar tu opcion o no.
 
El que quiera hacer un PLC que lo haga, en mi caso lo haré a mi manera, después su manual para que todo el mundo lo pueda hacer lo que no tienen mucha idea o modificarlo.

Al tener claro lo que es un PLC, en sentido de que hayan reparado algunos, al ver su interior es muy complejo de reparar sobre todo los SIMATIC 300 del Step 7. Te darás cuenta que es complicado hacer funcionar tu PLC a base de PIC con LCD incluido o no sin que se te cuelgue y es un riesgo.

Ya lo haré y lo pondré hasta en venta sólo y cuando compruebe todos sus posibles fallos.

Anímate hacer algunos.
 
Última edición:
Todo estaba muy interesante, seria muy provechoso continuar. Si META quiere comprar el plc pues que lo compre, la idea de estos foros en gran parte es aprender a hacer lo que ya esta hecho, si es necesario reinventar la rueda se hace, en fin estamos aprendiendo, o no? Si no, estos foros no tendrian sentido seria mejor un foro de "donde comprar aparatos electronicos", don't you think??

Si quisiera un plc bastante economico compraria uno de marca LG y ya, pero yo quiero hacerlo, programarlo como me parezca en mi amado lenguaje C.

Si quieren seguir de verdad seria excelente muchachos.

Saludos.-
 
Yo hice uno una vez con AVR y usaba la eeprom para descargar el diagrama escalera, pero sabe donde quedo el codigo... Lo que si recuerdo es que tuve que hacer un pseudoparalelismo para poder examinar todas los circuitos a velocidad suficiente para que actuara como si fuera un circuito combinacional.
 
Ok. Y no tuviste problemas de reinicio del pic? Es decir, de manera aleatoria y descontrolada? Yo ando lidiando con eso en este momento, todo bien hasta que de sorpresa se apaga y se prende "solo"...
 
No, los que sufren esos males son los de la serie 16F, son muy suceptibles a las variaciones de voltaje. Pero tambien el reinicio por software por un mal redireccionamiento o un salto en codigo no valido es común, hay que saber usar el depurador.
Instala un capacitor de 1000uF lo mas cercano al pic.
 
en este preciso instante estoy creando mi PLC, se que tardara unos dias, pero en fin es una idea que la tengo hace tiempo y por cuestiones de ruido antes no me atrevia,hay muy buenos software para programar en forma rapida, tenemos a el PARSIC que es parecido al LOGO de siemens, tenemos al FLOWCODE que es parecido al NIPLE... pero la version 4 mucho mejor que el niple y ademas programa AVR y PIC
 
Que bueno que esto se siga haciendo:)
ya me estaba olvidando del tema U_U
jejeejee, espero que publiquen pronto algun que otro resultado,
pues me encanta la programacion

Saludos!!!
 
Bueno les comento que acabo de realizar mi plc y no tengo ningun problema de ruido, usé primero una fuente de PC, una porqueria total se me reiniciaba el pic o cuando conectaba una licuadora o hasta el cautin se loqueaba, ahora le puse una fuente lineal con su respectivo filtro de linea y quedo ok, acabo de probarlo con un arranque estrella triangulo de un motor de 18KW y aún usando contactores mi circuito es inmune, quiero someterlo a pruebas mas fuertes haber que me surge les comento algunas caracteristicas por mientras:
*alimentacion 220v
*14 entradas digitales aisladas 24vdc (con o sin filtrar) 5mA (antirebote por hardware)
*8 salidas digitales a transistor PNP aisladas 24vdc 0.5A (con o sin filtrar)
*programacion ICSP (con el pickit2 clone)
*pic de uso 16F876A
*software de programacion PARSIC (lenguaje de bloques similar al PLC logo de siemens)
 
Aqui les traigo mis avances del prototipo funcionando, aclaro que ahora esta trabajando full y muy bien pero antes de todo quiero hacerle mas pruebas con distintas fuentes de ruido
 

Adjuntos

  • todo en partes.JPG
    todo en partes.JPG
    310.6 KB · Visitas: 260
  • armado1.JPG
    armado1.JPG
    225.7 KB · Visitas: 223
  • armado2.JPG
    armado2.JPG
    299 KB · Visitas: 216
  • con circuito de potencia.JPG
    con circuito de potencia.JPG
    316.6 KB · Visitas: 206
Atrás
Arriba