Está en la página 1de 3

Prof .Ing.

Jorge Adan Galvez Soberanes


Alum.Ibarra Perales Abraham
Alum.Manriquez Gonzalez Juan Antonio
Alum.Valles Sanchez Luis Angel

Universidad CIES
Ing. Robótica

Control de servomotor mediante potenciómetro/Microcontrolador

Objetivo:
Controlar un servomotor con un potenciómetro analógico rotatorio, el cual son dos
resistencias conectadas en serie,pero con un sistema de mecanismo rotatorio . el cual
permite cambiar su valor resistivo de mayor a menor y viceversa. cuando lo alimentas de
un voltaje positivo a negativo ,trabajara como un divisor de voltaje esto quiere decir que va
dividir el voltaje con que lo estemos alimentado.
Microcontrolador

Ahora que ya se sabe la información anterior,se puede automatizar con eso datos y se puede
utilizar un microcontrolador,utlizado uno de sus puertos analogicos del microcontrolador

Ahora veamos el código ,el cual se podrá


leer mediante la instrucción llamada
AnalogRead(); en
el puerto que use ya que se tienen los datos
se puede usar para controlar un servomotor
el cual solo puede girar de 0 a 180 grados. la
conexión es muy versátil ya que solo se
alienta a 5 voltios junto al microcontrolador
y el potenciómetro,la salida de control lo
puede usar en cualquier puerto disponible,
directamente usaremos la librería disponible
llamada:

Librería

El cual se utiliza con el mismo nombre en minúsculas, para declarar tu servomotor

usando el comando servo.write(); podemos decir en posición,


queremos que se mueva el servomotor y será mucho más cómodo poder control cada grado, en la
que queremos que se mueva el servomotor simplemente enviando cada valor correspondiente para
posicionarlo,solo existe una condición solo se pueden usar número de 0 a 180 para controlar el
servomotor.

el potenciómetro nos proporciona datos de 0 a 1023 ahora lo que podemos hacer es calibrar los
datos usando el comando map(); usando la variable donde se almaceno la primer vez, luego se
asigna el primer valor a convertir que sería de 0 a 1023 después se coloca el valor al que
quisiéramos cambiarlo que es de 0 a 180 todo es este proceso se debe guardar en la misma variable
local creada, ahora sí se podrá usar para mover el servomotor.

se utiliza la misma variable para posicionar el servomotor servo.write(angulo);

con esto se estará controlando de una forma adecuada la posición del servomotor al ir cambiando
los valores utilizado,el potenciómetro.

2
Se toma como base el código proporcionado por el facilitador el cual se muestra al inicio del
documento , del cual se identifican los siguientes fallos y se procede a corregir

Librería de la cual se identifica que servo está con minúsculas cuando


debería ser mayúsculas para así ser leída por el programa se corrige , se
observa que el programa lo está capturando.se prosigue ala corrección de secuencia de ejecución
arrojando lo siguiente de igual forma que lo anterior se realiza la
corrección,cambiando la letra mayúscula a minúscula de la secuencia se corre en
ejecución de nuevo arrojado conflicto de ejecución encontrado lo siguiente
se logra identificar que al momento de declarar la variable pinMode(potpin, INPUT) existe otro error
de sintaxis ,así que se produce nuevamente a corrección ya que al inicio de proyecto se había
declarado de esta forma así que ya con la declaratoria correcta queda
de esta forma ante de disponerse en ejecución nuevamente se
identifica otro error de sintaxis en el siguiente comando el cual se
corrige L Logrando así corregir sintaxis completa

Se anexa video de resultado :

También podría gustarte