{"id":2747,"date":"2010-08-01T00:58:40","date_gmt":"2010-07-31T23:58:40","guid":{"rendered":"http:\/\/www.pesadillo.com\/pesadillo\/?p=2747"},"modified":"2010-02-10T16:00:44","modified_gmt":"2010-02-10T15:00:44","slug":"control-de-servo-motor-con-pic-16f84-y-labview","status":"publish","type":"post","link":"https:\/\/www.pesadillo.com\/pesadillo\/?p=2747","title":{"rendered":"Control de servo motor con PIC 16F84 y LabView"},"content":{"rendered":"<p><span style=\"font-size: large; color: #ffffff; font-family: Arial;\"><strong><a href=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo_pic16f84tini11.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2749\" title=\"servo_pic16f84tini[1]\" src=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo_pic16f84tini11.JPG\" alt=\"servo_pic16f84tini[1]\" width=\"272\" height=\"230\" \/><\/a>Control<\/strong><\/span><\/p>\n<p><span style=\"color: #000000;\">Descripci\u00f3n<\/span><\/p>\n<p><span style=\"color: #000000;\">Este Proyecto es un primer paso hacia la Rob\u00f3tica , el dise\u00f1o busca controlar un servomotor por medio de un PC.<\/span><\/p>\n<p><span style=\"color: #000000;\">El control se a logrado por medio de un microcontrolador PIC16F84 , el cual proporciona las se\u00f1ales necesarias para producir una\u00a0 deflecci\u00f3n en el servo de 0 a 120 grados aprox , con una resoluci\u00f3n de 255 pasos .<\/span><\/p>\n<p style=\"text-align: center;\"><span style=\"color: #000000;\"><a href=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo1.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2748\" title=\"servo[1]\" src=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo1.JPG\" alt=\"servo[1]\" width=\"315\" height=\"310\" srcset=\"https:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo1.JPG 315w, https:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo1-300x295.jpg 300w\" sizes=\"auto, (max-width: 315px) 100vw, 315px\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0<\/span><\/p>\n<p><span style=\"color: #ffffff;\"><span style=\"color: #000000;\">El microcontrolador se comunica con el PC por medio del bus de control del puerto paralelo , el software encargado de la comunicaci\u00f3n es nuestro viejo programa <\/span><span style=\"color: #000000;\">send to pic16f84<\/span><span style=\"color: #000000;\"> elaborado en LabView hace un par de meses.<\/span><\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0<\/span><\/p>\n<p><span style=\"color: #000000;\"><strong>Circuito<\/strong><\/span><\/p>\n<p><a href=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-admin\/servo_pic16f84cir.JPG\"><span style=\"color: #000000;\">\u00a0<\/span><\/a><\/p>\n<p><span style=\"color: #000000;\"><em><a href=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo_pic16f84cir1.JPG\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2750\" title=\"servo_pic16f84cir[1]\" src=\"http:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo_pic16f84cir1.JPG\" alt=\"servo_pic16f84cir[1]\" width=\"581\" height=\"372\" srcset=\"https:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo_pic16f84cir1.JPG 581w, https:\/\/www.pesadillo.com\/pesadillo\/wp-content\/uploads\/2009\/10\/servo_pic16f84cir1-300x192.jpg 300w\" sizes=\"auto, (max-width: 581px) 100vw, 581px\" \/><\/a><\/em><\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0<\/span><\/p>\n<p><strong><span style=\"color: #000000;\">Programa para el PIC<\/span><\/strong><\/p>\n<p><span style=\"color: #000000;\">;Recepci\u00f3n serial de datos<br \/>\n;Por Carlos Fernando Jim\u00e9nez<br \/>\n;Bucaramanga Jueves 19 de Julio del 2000<\/span><\/p>\n<p>PUERTAB EQU 0x06<br \/>\nPUERTAA EQU 0x05<br \/>\nESTADO EQU 0x03<br \/>\nOPT EQU 0x01<br \/>\nINTCO EQU 0x0B<br \/>\norg 0<br \/>\ngoto INICIO<br \/>\norg 4<br \/>\ngoto interr<br \/>\n;****** inicio configuraci\u00f3n de la interrupci\u00f3n*****<br \/>\nINICIO bcf ESTADO,5 ;BANCO0<br \/>\nsbuff EQU 0x0C ;REGISTRO QUE RECIBE LOS DATOS SERIALES<br \/>\ncontador EQU 0x0E<br \/>\nW1 EQU 0X1B<br \/>\nw2 equ 0x1c<br \/>\nmovlw b&#8217;10110000&#8217;\u00ef\u00bf\u00bd<br \/>\niorwf INTCO ;interrupci\u00f3n RB0\/INT activa<br \/>\nmovlw b&#8217;11110101&#8242; ;configuraci\u00f3n del puerto<br \/>\nandwf PUERTAB,1 ;RB1 salida (&#8216;ya puedes enviar los datos&#8217; en alto)<br \/>\nmovlw b&#8217;00000101&#8242;<br \/>\niorwf PUERTAB,1 ;RB0 y RB2 entrada(&#8216;voy a enviarte datos!&#8217; en bajo interrupci\u00f3n) y dato listo en alto<br \/>\nbcf ESTADO,5 ;BANCO0<br \/>\nbcf PUERTAB,1<br \/>\nbcf PUERTAB,3 ;*****fin de la configuraci\u00f3n******<br \/>\nbsf ESTADO,5 ;BANCO1<br \/>\nmovlw 0x00<br \/>\nmovwf PUERTAA<br \/>\nBSF ESTADO,5 ;BANCO1<br \/>\nmovlw b&#8217;10010010&#8242; ;DIVISION 1-8<br \/>\nmovwf OPT<br \/>\nmovlw 0X7F<br \/>\nmovwf sbuff<br \/>\nbcf ESTADO,5 ;BANCO0<br \/>\nMAIN\u00a0<\/p>\n<p>;temporizacion para el servo<\/p>\n<p>;Tiempo para la reflexi\u00f3n min 1 max 2 ms<br \/>\nmovfw sbuff ;127-255<br \/>\nmovwf OPT ;cargamos el timer<br \/>\nmovlw 0x1f<br \/>\nmovwf PUERTAA ;Se\u00f1al arriba<br \/>\nmovlw 1<br \/>\nmovwf W1<br \/>\nespera10 btfsc W1,0<br \/>\ngoto espera10<\/p>\n<p>;M\u00ednimo tiempo 10 ms de descanso<br \/>\nmovlw 0x06<br \/>\nmovwf w2<br \/>\nbuc<br \/>\nmovlw 0x00<br \/>\nmovwf OPT ;cargamos el timer<br \/>\nmovlw 0x00<br \/>\nmovwf PUERTAA ;CAE LA SE\u00d1AL DE CONTROL<br \/>\nmovlw 1<br \/>\nmovwf W1<br \/>\nespera11 btfsc W1,0<br \/>\ngoto espera11<br \/>\ndecfsz w2<br \/>\ngoto buc<\/p>\n<p>goto MAIN<\/p>\n<p>interr btfss INTCO,1 ;Identificaci\u00f3n de la interrupci\u00f3n<br \/>\ngoto timer<br \/>\ngoto serial<\/p>\n<p>serial movlw 0x00 ;***** Rutina de recepci\u00f3n de datos*****<br \/>\nmovlw 0x00<br \/>\nmovwf PUERTAA<br \/>\nmovwf INTCO ;incapacita TODAS las interrupciones<br \/>\nmovlw 8 ;los 8 bits a recibir<br \/>\nmovwf contador ;registro que lleva la cuenta de los bits llegados<br \/>\nmovlw 0x00<br \/>\nmovwf sbuff ;pone sbuff en cero<br \/>\nespera1 bsf PUERTAB,3<br \/>\nbtfss PUERTAB,2 ;espera que el bit de sincron\u00eda se ponga en 1<br \/>\ngoto espera1\u00ef\u00bf\u00bd<br \/>\nmovlw b&#8217;1&#8242;<br \/>\nandwf PUERTAB,0 ;mascara del datos dato queda en w<br \/>\niorwf sbuff,1<br \/>\nrlf sbuff<br \/>\nbcf PUERTAB,3 ;bit adentro<br \/>\nbucle btfsc PUERTAB,2 ;espera que el bit de sincron\u00eda vuelva a 0<br \/>\ngoto bucle<br \/>\ndecfsz contador,1<br \/>\ngoto salto<br \/>\ngoto fin<br \/>\nsalto goto espera1<br \/>\nmovlw 0<br \/>\nMOVWF W1<br \/>\nfin movlw b&#8217;10110000&#8242; ;rehabilitaci\u00f3n de TODAS LAS interrupciones<br \/>\nmovwf INTCO<\/p>\n<p>RETFIE<\/p>\n<p>timer<br \/>\nmovlw 0x00<br \/>\nmovfw INTCO<br \/>\nmovlw b&#8217;10110000&#8242;<br \/>\nmovwf INTCO<br \/>\nmovlw 0<br \/>\nMOVWF W1<br \/>\nRETFIE<\/p>\n<p>END<\/p>\n<p><span style=\"color: #000000;\">Fuente: <a href=\"http:\/\/usuarios.lycos.es\/charlytospage\/servomotor.htm\" target=\"_blank\">http:\/\/usuarios.lycos.es\/charlytospage\/servomotor.htm<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Control Descripci\u00f3n Este Proyecto es un primer paso hacia la Rob\u00f3tica , el dise\u00f1o busca controlar un servomotor por medio de un PC. El control se a logrado por medio de un microcontrolador PIC16F84 , el cual proporciona las se\u00f1ales necesarias para producir una\u00a0 deflecci\u00f3n en el servo de 0 a 120 grados aprox , con una resoluci\u00f3n de 255 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[69],"class_list":["post-2747","post","type-post","status-publish","format-standard","hentry","category-electronica","tag-electronica"],"_links":{"self":[{"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=\/wp\/v2\/posts\/2747","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2747"}],"version-history":[{"count":2,"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=\/wp\/v2\/posts\/2747\/revisions"}],"predecessor-version":[{"id":3483,"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=\/wp\/v2\/posts\/2747\/revisions\/3483"}],"wp:attachment":[{"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2747"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2747"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pesadillo.com\/pesadillo\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2747"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}