Comunicaciones


Sensori e Attuatori comunicano con i connettori di Input-Output chiamati “PIN”

Me Sensori e gli Attuatori comunicano i con chiken estándar PIN 3 Soli fili conduttori. Il primo conduttore (TOMA DE TIERRA) è la massa, el segundo conductor (+5V) es el poder ’, el tercer conductor (SIG) es la señal. Los pasadores son todos lo mismo y todos salen pueden ser configurado tanto en lo que.

Módulos Masters tienen seis pernos de InOut tienen la SlaveServo diez y módulos CapSensor ninguno.

Sobre los seis Pin c ’ es la inscripción “A CABO DE PERNOS”. No se confunda por esta escrita. Los seis pernos son todos iguales y son todos configurables, y como en, salen.

Cuando realizar las conexiones puede ser difícil de leer el escrito, por lo que es bueno saber: en todos los componentes del sistema Theremino, conectar toma de tierra está siempre cerca del borde de la placa.

Los pines se configuran como salida produce un voltaje de 0 en 3,3 voltios, los configurados como aceptan voltajes de 0 en 3.3 Voltios. Si se aplica a la entrada de voltaje PIN fuera de este rango debe ser el límite de corriente 100 máxima au (con una resistencia de por lo menos 33k cerca de PIN) de lo contrario la comunicación USB es perturbada y hasta que se desconecte.

En el caso de enlaces largos, Lea también Esta página.

Este es el link de la muestra


Conectar los interruptores y botones con o sin subida

Aquí ver dos maneras de conectar switches, Microinterruptor de, Reed y botones. La primera manera es simple, pero este último es más tolerante a la interferencia.

En la parte superior se ven una conexión directa (configurar el Pin entrado con PullUp)

En la parte inferior verá un acceso directo a través de resistencias de protección (configurar los pines de entrada sin subida). La presencia de una resistencia de valor muy alto, en serie con el cable “Señal”, limita la corriente, Aunque las muy altas tensiones (también cientos de voltios). Esto asegura que la comunicación USB no molestarán, incluso en ruido fuerte, inducidas en cables de, de fuentes de alimentación externas, relés de motores o energía.

Si en vez de conectar botones, medir voltaje (con el Pin de entrada configurada como ADC) un resistor de 330K causaría demasiada caída de tensión, y se debe reducir a 33K. También en este caso la 10 k resistencia sería y debe ser eliminada.


Conectar los botones en caso de interferencias eléctricas fuertes

La solución que se muestra en la sección anterior protege la comunicación principal con el PC, pero no impide que el ruido de impulsos cortos de ser interpretado por error, como un cierre manual del botón.

Por lo tanto en ambientes hostiles, por ejemplo en el caso de que los cables pasan de los botones junto a los cables de alimentación de un solenoide o un motor, También es aconsejable añadir un condensador. Este condensador elimina los pulsos más cortos de una décima de segundo, y aumenta aún más la protección en caso de tensiones muy altas.

Las dos fotos de abajo muestran el esquema eléctrico y el cableado de estas conexiones (haga clic en las imágenes para agrandar).

De botón de filtro De botón de filtro

La imagen siguiente muestra cómo realizar las conexiones de los cables directamente (Haga clic en la imagen para ampliarla).

AirWires PushButton Filtrar

 

El uso de un cable con un conector hembra, componentes también se pueden soldar directamente en los cables.

Posteriormente, se podría llenar los componentes con un trozo de vaina termorretráctil.

Otra posibilidad es utilizar una tabla de matriz cuadrada base pequeña.

 

Recuerda que cuando se utiliza estos enlaces (con resistencia de protección), usted debe configurar los pines de entrada sin subida.

Asimismo, recuerda que, si en lugar de botones que conectan hicieron mediciones de voltaje (con el Pin de entrada configurada como ADC), un resistor de 330K causaría demasiada caída de tensión, y se debe reducir a 33K. También en este caso la 10 k resistencia sería y debe ser eliminada. Además, la adición del condensador limita el ancho de banda del ADC a aproximadamente 10 Hz.


El maestro y las conexiones de pasador de esclavos

Tomemos como ejemplo de tener que conectar un cable blindado, para llevar las señales de tres pines y 5 Volts a gran distancia.

Podría cortar el cable blindado con conectores individuales como se ve aquí (Haga clic en las imágenes para agrandar). Cables azules, Amarillo y verde claro son las tres señales, el cable rojo es 5 volts y el cable verde oscuro es la masa.

Pero es una solución difícil de construir y fiable. Estas fotos son de un acelerómetro, que se traslada a menudo de un banco de laboratorio de todo ’. Después de unos meses, dos de los cinco hilos se rompió, encima de los conectores RCA al maestro.

Mucho mejor sacrificar tres extensiones estándar:

Cables de extensión a la mitad ofrecen conectores hembra de buena calidad, con los cables están bien conectados y muy robusto. Por una fracción del precio de los conectores sólo se pueden comprar bolsas de diez extensiones estándar de Hobby King.

Cables de extensión conectan fácilmente con el hijo de cable blindado. Cubierta de conexiones de envoltura termo-que encoge y obtendrá un cableado robusto y profesional.

Aquí hay un enlace bien hecho.

Los tres cables rojos llevan cinco voltios y conecte, todos juntos, el cable rojo cable blindado. Los cables marrón son la masa y conectar, los tres, la siembra de cable blindado. Los tres cables amarillos son InOut señales de los pines 1, 2 y 3 y están relacionados con tres de los cables dentro del cable blindado.

En el lado opuesto del cable apantallado es el mismo, con las hembras de la segunda mitad de los cables.

En el caso de enlaces largos, Lea también Esta página.


Esclavos y Master módulo módulos comunican vía serie

El serial proporcionado por Theremino Master no es un normal RS232 o RS485. Pero una línea especial que transmite y recibe sobre un solo filamento de señal, Protocolo de DPM desarrollado por nosotros. Sus ventajas son la comunicación de alta velocidad y uno mismo-reconocimiento de módulos. Más información aquí: Protocolo de técnica

Muchos módulos de esclavo pueden conectarse a la línea serie del maestro.

En cuanto a sensores, para las conexiones de línea serial, utilizando los comandos de extensión de servos normales, disponible en un gran precio en www.hobbyking.com

Connectors

Marrón = tierra
Rojo = + 5V
Amarillo = señal

Para necesidades especiales muy largas conexiones de alimentación puede hacer la comunicación serial de dos hilos (Masa y señal), posiblemente de la cable blindado. Más información en la sección Las conexiones de largo y de inmunidad de ruido


Maestro y el equipo comunican a través de USB

Incluso varios masters pueden conectarse simultáneamente a la misma PC a través de líneas USB separados y todos ellos serán reconocidos por la misma aplicación HAL.

Utilizar múltiples líneas USB y multiple Master permite en algunos casos para aumentar la velocidad de comunicación. En otros casos puede servir para especializarse algunos maestro de la lente y otras comunicaciones para comunicarse con los canales que requieren tasa de refresco máxima.

Cables USB no deben ser especiales, buena calidad o particularmente cortes. Hemos probado cables largos (10 metros) enlaces con más cables en serie y (cables de extensión) y funcionó a la perfección. El sistema Theremino utiliza el protocolo de USB 2.0, pero es posible hacer conexiones sin errores, a través de HUB estándar, también USB 1.0.


El programa mantiene módulos de Hardware de comunicación de HAL con las ranuras

Theremino HAL

 

 

 

 

 

 

 

 

 

Theremino HAL Slots

L ’ HAL ( Capa de abstracción de hardware ) simplifica la comunicación USB y complejidades del hardware de ’ transformar todas las señales en los números “Flotador” que se escriben en la salida entrada de 0 en 999 nominado “Ranura de”, o leer por ellos y enviado a ’ hardware.

.

 

 


Las ranuras de

El “Ranura de” Sistema Theremino se identifican con un número de 0 en 999 y son todos parte de MemoryMappedFile con nombre “Theremino1”.

Cada ranura contiene un número “Flotador” se pueden leer o escrito por cualquier componente del sistema Theremino.

En este cuadro, sólo el HAL escribe en las ranuras pero en realidad que todos los componentes del sistema se pueden leer que escribir en cualquiera de las ranuras, Aunque ya utilizado por otros.

El 1000 ranuras disponibles son utilizables libremente hay sólo una regla:

Muchas aplicaciones y muchos pernos pueden leer la misma ranura, pero se debe evitar escribir en muchos la misma ranura, ello no rompe nada pero los resultados son indefinidos.

Si está enviando varios flujos de datos a la misma ranura entonces los datos se mezclan y gana el último que escribir, Si desea combinar los datos en las reglas de una manera ordenada son necesarios.

Establecer las reglas matemáticas y lógicas entre las ranuras, y también para escribir algoritmos complejos de comportamiento, Utilizamos "Theremino_Script" o cualquier lenguaje de programación c++, CSharp, VBNET, VB6, Python o Pascal, pero también se pueden utilizar lenguajes visuales como MaxMSP, Procesamiento de, PureData, LabVIEW y EyesWeb.

Para MaxMSP son plugins disponibles y ejemplos: descargas/fundamentos


Las ranuras para cadenas de texto

SlotText son similares a las tragamonedas normales, tener direcciones similares (De 0 en 999) y se usan de manera similar a ellos pero a diferencia de las tragamonedas, que contienen números (enteros o coma flotante), SlotText contiene cadenas de caracteres.

Los caracteres utilizados internamente son del tipo Unicode para permitir la escritura en diferentes idiomas. (por ejemplo chino) y use dos bytes para cada carácter.

Cada SlotText puede contener cadenas de texto de hasta 100 mil caracteres. Si excede el 100 miles de caracteres en lugar del texto se escribe un breve mensaje de error.

SlotText no usa MemoryMappedFile “Theremino1”, pero usan un MemoryMappedFiles diferente para cada SlotText. Los nombres de estos archivos van desde “ThereminoSS0” en “ThereminoSS999” (Dove ThereminoSS sta por ranuras de cuerdas de Theremino).

Y finalmente, SlotText solo se puede usar para comunicarse entre aplicaciones y no para comunicarse con HAL y módulos Master o Arduino..

En la actualidad (junio 2022) las únicas aplicaciones que usan SlotText son:
– QRdecoder, que los utiliza para el texto decodificado por el código QR y el código de barras.
– Automatización (de la versión 7 a partir), que proporciona comandos de SlotText para escribir y leer SlotText.
– SlotViewer, En las versiones más recientes, puede utilizar ranuras numéricas y de texto.
– Cobot, Puede recibir comandos desde el exterior y también enviar comandos asincrónicos a la automatización mediante el evento “Comandos de Cobot”.

Para usar las comunicaciones entre Automatización y la aplicación COBOT, lea las siguientes páginas en el archivo de instrucciones de Automatización:

  • SlotText
  • Event_CommandsFromCobot
  • Los comandos de COBOT a la Automatización
  • Los comandos de Automatización a COBOT

En la carpeta “Fuentes” en Automatización (siempre de la versión 7 en adelante que publicaremos a finales de 2021) encontrarás el nuevo archivo “Class_ThereminoStrings.vb” que los programadores pueden usar para agregar SlotText a sus aplicaciones también.


La memoria asignada de archivos

Las ranuras se basan en la “Memoria traz archivos” son poco conocidas pero muy útiles.

Comunicarse con “Memoria traz archivos” es muy eficiente, en unas decenas de microsegundos puede ser transferidos cientos de números “Flotador” entre programas separados, con diversos hilos de rosca y escrita en diferentes idiomas.

El “Memoria traz archivos” llama “Theremino1” Es largo 4096 bytes y contiene la 1000 ranura para el sistema Theremino. Todos los programas del sistema de Theremino puede escribir y leer sus datos, en forma de números de flotador, en 1000 ranura de este archivo.

Cada ranura es cuatro bytes que cuando se utiliza bajo nivel almacenamiento funciones le debe multiplicar el “Ranura de” por cuatro obtener l ’ índice los bytes en el MemoryMappedFile.

Programas de prueba y ejemplo, con las fuentes, en los principales lenguajes de programación. Con estos ejemplos es muy fácil de equipar cualquier programa la oportunidad de comunicarse con el sistema Theremino.

También disponibles son los “Externo” para Scott y Max5 se encuentra en archivo “MaxInstall.zip”. De este modo es posible comunicar “Parche” por el máximo con el sistema de “Theremino” a través de la MemoryMappedFiles.


Conexiones con cables estándar

Para todas las conexiones entre los polos, sensores y actuadores, así como comunicación serial es comandos de extensión de servo normal muy cómodo disponibles en un gran precio en “www.hobbyking.com” en la sección “Hardware y accesorios” / “Los cables y enchufes” / “Cable de servo & Conectores de servo”

Cable estándar con conector macho-hembra

Marrón = Gnd rojo = + 5V amarillo = señal
  • Para corrientes de hasta 0.5 Uso de amplificadores 26 AWG (0.13 MMM)
  • Para corrientes de hasta 1 o 2 Uso de amplificadores 22 AWG (0.33 MMM)

Más información sobre los cables de conexión para altas corrientes y líneas muy largas, y los precios objetivo y vínculos de la sección: cables de conexión


Números Float
(valores mínimos y máximos válidos para las franjas horarias numéricas)

Los números de “Flotador” son números de punto de flotante 32 poco (precisión simple). Theremino el sistema siempre utiliza el “Flotador” en lugar de números “Números enteros” o “Doble” por las siguientes razones:

1) Siendo larga 32 bits son leídos y escritos en una sola sentencia del procesador y no requieren mecanismos de sincronización para evitar errores.

2) Aunque los números con punto decimal pueden contener ningún error o redondeando cualquier número entero de 000 000 000-16 '+ 'a' 16' 000-odd, y entonces fácilmente los valores de 0 en 65535 (16 poco) e incluso hasta 24 poco de los mejores existentes sensores y actuadores.

3) Puede utilizarse para enviar 16 millones de comunicaciones diferente “del servicio de” utilizando valores de NaN (no es un número) y NaNs ( Nan de señalización ).

4) También pueden contener valores especiales “+Infinity” y “-Infinity”, útil cuando los cálculos producen valores muy altos.

5) La exactitud de la “Flotador” es de miles de millones de veces más que la precisión requerida, porque se utilizan sólo para comunicarse y no para realizar cálculos.

6) Toda transferencia corriente 32 bits en una sola sentencia, por cui l ’ efficienza è massima e debido programmi separati pueden comunicaros en pochi microsecondi.

Por maggiori particolari sui numeri “Flotador” Legione le pagine seguenti.

– – – – – –

Flotador – Precisión simple, 32 poco, números de coma flotante

Máximo positivo: 3.4028235 E + 38
Positivo mínimo: 1.401298 E-45

Máximo negativo: -3.4028235 E + 38
Negativo mínimo: -1.401298 E-45

Número entero máximo almacenado sin errores de redondeo : +16’ 777 ’ 216
Minuto entero sin errores de redondeo : -16’ 777 ’ 216

Número entero máximo visualizado (7 cifras redondeadas): +9’ 999 ’ 999
Min entero visualizado (7 cifras redondeadas): -9’ 999 ’ 999

+Cero: 0 00000000 00000000000000000000000 (0000 0000)
-Cero: 1 00000000 00000000000000000000000 (8000 0000)
+Infinity: 0 11111111 00000000000000000000000 (7F80 0000)
-Infinity: 1 11111111 00000000000000000000000 (FF80 0000)

NANS positivo
De: 0 11111111 00000000000000000000001 (7F80 0001)
Para: 0 11111111 01111111111111111111111 (7FBF FFFF) (4’ 194 ’ 303 valores)

NANS negativo
De: 1 11111111 00000000000000000000001 (FF80 0001)
Para: 1 11111111 01111111111111111111111 (FFBF FFFF) (4’ 194 ’ 303 valores)

NAN positiva
De: 0 11111111 10000000000000000000000 (7FC0 0000)
Para: 0 11111111 11111111111111111111111 (7FFF FFFF ) (4’ 194 ’ 304 valores)

NAN negativo
De: 1 11111111 10000000000000000000000 (FFC0 0000)
Para: 1 11111111 11111111111111111111111 ( FFFF FFFF ) (4’ 194 ’ 304 valores)

– – – – – –

Valores especiales

IEEE reserva valores de exponente de todo 0s y todo 1s para denotar valores especiales en el sistema de coma flotante.

Cero – Como se mencionó anteriormente, cero no es directamente representable en el formato recto, debido a la asunción de una de las principales 1 (tenemos que especificar un verdadero cero mantisa para obtener un valor de cero). El cero es un valor especial que indica con un exponente campo de cero y un campo de la fracción de cero. Tenga en cuenta que -0 y +0 son valores distintos, Aunque ambos se comparan como iguales.

Denormalized – Si el exponente es todos 0s, pero la fracción es cero (otra cosa sería interpretada como cero), el valor es un denormalized número, que no tiene un líder asumido 1 antes del punto binario. Por lo tanto, Esto representa un número (-1)0.f × s × 2-126, donde s es el bit de signo y f es la fracción. De doble precisión, números de denormalized son de la forma (-1)0.f × s × 2-1022. De esto se puede interpretar que cero como un tipo especial de denormalized número.

Infinity – Los valores de + infinito y - infinito se denotan con un exponente de los 1s y una fracción de todos 0s. El bit de signo se distingue entre el infinito negativo y positivo infinito. Pudiendo indicar infinito como un valor específico es útil porque permite que las operaciones continúen más allá de situaciones de desbordamiento. Operaciones con valores infinitos se definen en IEEE punto flotante.

No es un número – El valor NaN (No es un número) se utiliza para representar un valor que no representa un número real. NaN ’ s están representados por un patrón de bits con un exponente de los 1s y una fracción de cero. Hay dos categorías de NaN: QNaN (Tranquila NaN) y SNaN (NaN de señalización).

QNaN – Un QNaN es un NaN con el fracción más significativo bit activado. QNaN ’ s se propagan libremente a través de las operaciones aritméticas más. Estos valores pop fuera de una operación cuando el resultado no está definido matemáticamente.

SNaN – Un SNaN es un NaN con el pedacito más significativo de la fracción claro. Se utiliza para señalar una excepción cuando se utiliza en las operaciones. SNaN ’ s puede ser útil para asignar a variables no inicializadas para atrapar el uso prematuro.

Semánticamente, QNaN ’ s denotan operaciones indeterminadas, mientras SNaN ’ s denotan operaciones no válidas.

– – – – – –

Operaciones especiales

Las operaciones sobre números especiales son definidas por el IEEE. En el caso más simple, cualquier operación con un NaN da como resultado NaN. Otras operaciones son las siguientes:

Operación Resultado
n ÷ ±Infinity 0
±Infinity × ±Infinity ±Infinity
±NonZero ÷ 0 ±Infinity
Infinity + Infinity Infinity
±0 ÷ ±0 NaN
Infinity – Infinity NaN
±Infinity ÷ ±Infinity NaN
±Infinity × 0 NaN

– – – – – –

Resumen

Signo de Exponente (y) Fracción (f) Valor
0 00..00 00..00 +0
0 00..00 00..01
:
11..11
Positivo Denormalized Real
0.f × 2(-b+1)
0 00..01
:
11..10
XX... XX Positivo normalizado Real
1.f × 2(yb)
0 11..11 00..00 +Infinity
0 11..11 00..01
:
01..11
SNaN
0 11..11 10..00
:
11..11
QNaN
1 00..00 00..00 -0
1 00..00 00..01
:
11..11
Negativo Denormalized Real
-0.f × 2(-b+1)
1 00..01
:
11..10
XX... XX Negativo normalizado Real
-1.f × 2(yb)
1 11..11 00..00 -Infinity
1 11..11 00..01
:
01..11
SNaN
1 11..11 10..00
:
11.11
QNaN

Los comentarios están cerrados.