Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Cómo utilizar la biblioteca ServoTimer2 (Explicación simple) Servo Sweep

Componentes y suministros

Servos (Tower Pro MG996R)
× 1
Arduino UNO
× 1
Cables de puente (genéricos)
× 1
Piezas electrónicas UTSOURCE
× 1

Acerca de este proyecto

Introducción

He estado tratando de hacer un robot humanoide recientemente, lo que significa lidiar con servomotores. Todo funcionó igual de bien justo antes de que intentara hacer HABLAR al robot. Cuando necesitaba usar la biblioteca TMRpcm. Pero hay algunas bibliotecas como

  # TMRpcm.h # VirtualWire.h  

son bibliotecas que utilizan el Timer1 de Arduino. Parece que no puede usar dos dispositivos simultáneamente donde ambos usan el mismo temporizador ... Entonces, si mi robot habla, los servos no funcionan. Porque Servo.h y TMRpcm funcionan en Arduino TImer1. Que es un desastre. Si desea que ambos funcionen, debe usar otra biblioteca para servos. ¿Cuál es la biblioteca ServoTimer2? Esto usa el Timer2 en Arduino ... Desafortunadamente en Internet no he encontrado ningún tutorial para comprender cómo funciona realmente esta biblioteca ServoTimer2 y cómo usarla en el código. Entonces, he decidido hacer un tutorial para que la gente como yo lo entienda mejor. Usaremos un servomotor con esta biblioteca y crearemos un código de barrido de servo simple

Puede ver el video para comprender mejor.

Paso 1:Piezas y ensamblaje:

La parte principal es un servomotor.

Estoy usando un micro servo sg90, cualquier modelo está bien.

Luego tome un brazo de servo como en la imagen 2 y péguelo en un cartón duro (esto es solo para obtener una buena visibilidad del grado) y luego agregue el brazo al servomotor como en la imagen 4.

Paso 2:descargue y agregue la biblioteca ServoTimer2 a Arduino

En primer lugar, tendrá que descargar la biblioteca desde aquí https://github.com/nabontra/ServoTimer2 y pegarla en la carpeta de la biblioteca Arduino.

Luego vaya a boceto> incluir biblioteca> agregar archivo zip desde la carpeta de la biblioteca.

Ahora estás listo para irte.

Paso 3:construya el circuito simple

Esta es la parte más fácil

  • Cable rojo del servo a Arduino vcc (5v)
  • gris - Gnd
  • Naranja- digital 6

Paso 4:el código.

Antes de que conozcamos el código de ServoTimer2, echemos un vistazo al barrido de la biblioteca Servo.h.

(el motor girará de 0 grados a 90 grados; espere 1 segundo, luego a 180 grados, espere 1 segundo)

  #include  Servo servo1; void setup () {servo1.attach (6); // ponga su código de configuración aquí, para que se ejecute una vez} void loop () {// ponga su código principal aquí, para que se ejecute repetidamente:servo1.write (0); delay (1000); servo1.write (90); delay ( 1000); servo1.write (180); retraso (1000);}  

Como puede ver en esta biblioteca, si deseamos rotar un Servo a una determinada posición, solo tenemos que escribir el grado y el servo funcionará bien. Pero en la biblioteca ServoTimer2 debemos escribir el ancho de pulso del servo y el servo se mueve a esa posición usando eso. Más comúnmente 1500 significa 90 grados. El ancho de pulso máximo es 2250 y el mínimo es 750. Lo que significaría que 750 es para 0 grados y 2250 es para 180 grados. Pero déjame decirte que esto varía de un servo a otro. Simplemente envíe sus valores y vea qué sucede. No se preocupe, esto no destruirá ni dañará su servomotor un poco.

Ahora haré el mismo código para ServoTimer 2 y así obtendrás cuáles son realmente las diferencias.

  #include "ServoTimer2.h" ServoTimer2 servo1; void setup () {servo1.attach (6); } void loop () {// ponga su código principal aquí, para que se ejecute repetidamente:servo1.write (750); // ancho mínimo de pulso para retardo de 0 grados (1000); servo1.write (1500); // ancho de pulso para un retardo de 90 grados (1000); servo1.write (2250); // ancho máximo de pulso para alrededor de 180 grados de retraso (1000);}  

Ahora simplemente encienda el arduino y vea con una escala de grados para qué valor gira el servo. Y al hacer esto, puede hacer que su proyecto funcione. Happy Making.o 2700 para hacerlo.

Paso 5:Encienda por última vez el Arduino y experimente

Ahora simplemente encienda el arduino y vea con una escala de grados para qué valor gira el servo. Y compre haciendo esto, puede hacer que su proyecto funcione. Hacer feliz.

Código

  • Servo código de filtración
  • ServoTimer2.sweep.code
Código de filtración de servo C / C ++
 #include  Servo servo1; void setup () {servo1.attach (6); // ponga su código de configuración aquí, para que se ejecute una vez} void loop () {// ponga su código principal aquí, para que se ejecute repetidamente:servo1.write (0); delay (1000); servo1.write (90); delay ( 1000); servo1.write (180); retraso (1000);} 
ServoTimer2.sweep.code C / C ++
 #include "ServoTimer2.h" ServoTimer2 servo1; void setup () {servo1.attach (6); } void loop () {// ponga su código principal aquí, para que se ejecute repetidamente:servo1.write (750); // ancho mínimo de pulso para retardo de 0 grados (1000); servo1.write (1500); // ancho de pulso para un retardo de 90 grados (1000); servo1.write (2250); // ancho máximo de pulso para alrededor de 180 grados de retraso (1000);} 

Esquemas

ServoTimer2.sweep.code
https://github.com/ashraf-minhaj/Arduino-ServoTimer2-basic-sweep-/tree/code-sweep

Proceso de manufactura

  1. ¿Cómo utilizamos el molibdeno?
  2. Cómo usar una función en VHDL
  3. Cómo hacer una plataforma de robot Arduino + Raspberry Pi
  4. Robot Pi simple
  5. Cómo hacer fibra de vidrio
  6. Realloc () Función en la biblioteca C:¿Cómo usar? Sintaxis y ejemplo
  7. Función free () en la biblioteca C:¿Cómo usar? Aprende con el Ejemplo
  8. ¡¿Qué tan fácil es usar un termistor ?!
  9. Cómo hacer una animación de corte en Solidworks
  10. Como hacer un prototipo
  11. Cómo usar una amoladora cortadora