[:en]

Principe de la communication série

Protocoles communication

 

 

0 commentaires

[:zh]

Principe de la communication série

par | Mai 16, 2017 | Protocoles communication

The endstop are use for the machine can have reference point, machine origin « 0 »

For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here

info-endstop-eng

 

 

doc-endstop-smoothieboard

 

 

 

 

 

 

 

In the official smoothieboard endstop documentation       http://smoothieware.org/guide-endstops
have this drawing  and it’s write   « Wiring a basic NC endstop »

And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin

vue-endstop-smoothieboard

 

If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.

– Why use only 2 wire and don’t use 3 wires Ground (-)   Signal and VCC (+) ?

  • Why the information « O » is send tu input of microcontroller and not « + » ?

The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )

 

Why use only 2 wire and don’t use 3 wires Ground (-)   Signal and VCC (+) ?

ENDSTOP-3-WIRE

 

Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »

– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit


It’s works, just have 3 small disadvantage

  • need buy and prepare more 3 wires if you  connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
    A little more money and time to prepare
  • If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
  • touch-plate
  • If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.

 

 

 

 

 

Why use normaly closed endstop and use « 0 » Ground to send the information endstop push ?

For each endstop, it’s better to connect C to Signal and NC to Ground because this means the digital input pin ( endstop connector ) will be connected to Ground in it’s normal state and cut from Ground when the button is pressed. This approach is less prone to noise than the reverse. See here for more information.

Another positive effect of this approach is, that if a wire breaks for some reason you get the same signal as if the endstop is pressed. That makes sure that even with a damaged wire you are not able to overrun the endstop.

What need to know when use only 2 wire for connect switch or push button to microcontroler board ?

Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel

A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V…  and create fake information inside.   That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.

The pull up resistor solution explain by James Lewis

Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good

 

Explain in Chinese about floating volt level pin and pull up resistor
with Lazy Tomato Lab

See the other vidéo of LazyTomatoLab Chanel http://www.lazytomatolab.com/ very good lesson for learn about Arduino

Important !!

Check that you do not connect VCC ( red ) and GND ( black ) to a mechanical (microswitch) endstop!
Depending on your wiring that may fries your smoothieboard instantly or when the switch gets pressed.
If you’re not careful enough you can damage your board.

 

The endstop setting section inside config file

endstop-min-max-homing

all-option-of-pin

 

In smoothieboard like arduino board no need prepare pull up resistor for input pin, already have internal board resistor for this fonction.

Just activate the « pull up resistor » with option setting in config file

So don’t delete the  » ^ » after the number the pin

If you do this the fonction pull up resistor don’t works

In cnc can have endstop min for setting the « 0 » machine and endstop max for when the machine move over capacitie, stop  automatically.

The Formosa don’t have max endstop, it’s just a option.
With this way the cabling is more simple, users just need check if the drawing is under the maxi size the machine can cut.
If the machine move over the limit don’t worry just steppers motors loose step but don’t have damage.

Check the correct works of endstop

m119

Use M119 command to check if the wiring of endstop is correct

when the endstop is hit, need show 1
When endstop don’t hit, need show 0

If you don’t use xmax ymax …  not need there parameters appear can comment
with # in the beginning of line like below to desactivate

alpha_min_endstop 1.24^
#alpha_max_endstop 1.25^
alpha_homing_direction home_to_min

Or use nc in the end of the line like
alpha_max_endstop  nc

0 commentaires

[:fr]

Principe de la communication série

Protocoles communication

Article inspiré des sites web Sitelec http://sitelec.org/cours/abati/rs232.htm
Siloged http://www.siloged.fr/cours/html/isn_reseaux_info/la_liaison_srie.html

et Technologuepro
http://www.technologuepro.com/cours-systemes-embarques/cours-systemes-embarques-Bus-RS485-MODBUS-Prifibus.htm

I ) Introduction

Une liaison série est une ligne où les bits d’information (1 ou 0) arrivent successivement, soit à intervalles réguliers (transmission synchrone), soit à des intervalles aléatoires, en groupe (transmission asynchrone)
La liaison RS232 est par exemple une liaison série asynchrone

L’octet à transmettre est envoyé bit par bit (poids faible en premier) par l’émetteur sur la ligne Tx, vers le récepteur (ligne Rx) qui le reconstitue
La vitesse de transmission de l’émetteur doit être identique à la vitesse d’acquisition du récepteur.

Ces vitesses sont exprimées en BAUDS (1 baud correspond à 1 bit / seconde, dans notre cas).
Il existe différentes vitesses normalisées: 9600, 4800, 2400, 1200… bauds

A ) Communication duplex, half-duplex, full duplex

La communication peut se faire dans les deux sens (duplex).
soit émission d’abord, puis réception ensuite (half-duplex)
soit émission et réception simultanées (full-duplex)

B ) Communication asynchrone et synchrone

Lors d’une communication type asynchrone (pas d’horloge commune entre l’émetteur et le récepteur), des bits supplémentaires sont indispensables au fonctionnement: bit de début de mot (start), bit(s) de fin de mot (stop)
D’autre part, l’utilisation éventuelle d’un bit de parité, permet la détection d’erreurs dans la transmission

 

La norme RS485 date de 1983, les liaisons RS485 sont assez utilisées pour les CNC, notamment pour piloter certains drivers de moteur PAP ou servo moteurs ou piloter des variateurs de broches.

La transmission se fait sur une paire torsadée blindée, par des variations de tension en mode différentiel.

Le Bus RS485

Un des principaux problèmes des liaisons séries est l’absence d’immunité pour le bruit sur les lignes de signal. L’émetteur et le récepteur comparent les tensions par rapport à une masse commune en ligne (exemple RS232).

Un changement dans le niveau du potentiel de terre peut avoir des effets désastreux. Le bruit limite à la fois la distance maximale et la vitesse de communication.

Avec l’RS485 il n’y a pas une masse commune comme signal de référence. La transmission est différentielle, le récepteur compare la différence de tension entre les deux lignes, au lieu d’un niveau de tension absolue sur une ligne de signal.

Le protocole :

Un protocole consiste en la définition de trames d’échange. Plusieurs protocoles en été définies. Le protocole le plus connu est le protocole Modbus (marque déposée par MODICON) et Profibus (Siemens) qui sont deux protocoles standards de dialogue basé sur une structure hiérarchisée entre un maître et plusieurs esclaves. Néanmoins l’utilisateur est libre de définir son propre protocole.

  • 2 modes de communication sont possibles
    – Le maître envoie une demande à un esclave en particulier et attend une réponse
    – Le maître parle à l’ensemble des esclaves sans attendre de réponseCe qu’il faut savoir
  • Deux esclaves ne peuvent dialoguer ensemble.
  • Le dialogue maître – esclave peut être schématisé sous une forme successive de liaisons point à point.
  • Mode de communication : half-duplex. (2 fils ou 4 fils)Structure des messages :Le maître envoie un message constitué de la façon suivante :

 

 

 

 

Le CAN (Controller Area Network) est un bus de communication de type série, développé à la fin des années 80, par l’entreprise allemande Robert Bosch.

L’objectif était de fournir à l’industrie automobile une alternative aux nombreux câbles nécessaires pour interconnecter les équipements électroniques, sans cesse croissant des automobiles.
Aujourd’hui, l’efficacité et la robustesse de ce protocole l’ont amené à être utilisé dans de nombreuses autres applications industrielles, en particulier celles nécessitant un débit important (jusqu’à 1 Mbits/s) avec un très faible taux d’erreur.

Dans une voiture il y a un bus rapide à 250 kbit/s pour les équipements de sécurité et un de 125 kbit/s pour les autres équipements.

Plus d’informations à http://isil-electro.wikispaces.com/CAN

0 commentaires

[:]