[:en]
Faire communiquer la carte smoothieboard avec des éléments extérieurs
I ) Architecture générale
In the left the hardware of Cnc controler is just interface between Computer and machine ( no software )
When computer send impulsion to steppers motor drivers of CNC, the communication between computer can use
- parallele port : there are limit to use computer with // port to control CNC, the fréquency can’t be very high (maxi 35khz)
there latence for step signal between CPU and // port.
A a lot of computer don’t have // port now - Sérial or usb port card : more performance than // port because have processor manage step but there électronic card are a little expensive and use special software, need use the software of the card.
In the right the Cnc controler have all hardware and software to manage machine with autonomy
The computer is to send the machining file ( Gcode ) in memory of CNC controler and after computer can be unplug.
Like controler of big professional CNC in industry.
II ) Electronic control with smoothieboard
Faire communiquer la carte smoothieboard avec des éléments extérieurs
For save SD-Card need use Win32DiskImage if you have windows OS
https://www.youtube.com/watch?v=LWFxO9iIwUQ
0 commentaires
Faire communiquer la carte smoothieboard avec des éléments extérieurs
I ) Les Entrées/Sorties pour un Usage Général
Les cartes à microcontroleurs ( Raspberry Pi, Arduino, Beaglebone, Smoothieboard … ) ont des entrées sorties prévue pour les usages classiques, port USB, port réseau, port écran HDMI …
Les fonctions de ces cartes à microcontrôleur sont extensibles en y connecter des appareils, d’autres cartes.
Les éléments externes qui seront des options utilisés par la suite se connectent par l’intermédiaire des connecteur GPIO
GPIO signifie General Purpose Input/Output, littéralement (Entrée/Sortie pour un Usage Général)
Au lieu d’être regroupé à un seul endroit comme pour les carte Raspberry et Arduino.
Les ports GPIO de la carte smoothieboard sont répartis un peu partout. http://smoothieware.org/pinout
Il y a énormément de broches de connection GPIO de disponible dont certaines peuvent avoir des capacités particulières
Les broches GPIO avec possibilité d’interruption peuvent être utilisé pour des boutons pour modifier immédiatement le déroulement habituel de l’usinage même si celui ci est en cours.
PWM signifie Pulse Width Modulation ( modulation de largeur d’impulsions ) permet d’avoir une sortie analogique pour par exemple moduler la vitesse de la broche à partir de la carte.
Chaque port GPIO est identifié par P(un nombre).(un nombre)
Beaucoup de port GPIO sont libres d’utilisation comme ceux ci-dessous encadrés en rouge.
Mais si certaines fonctions de la carte ne sont pas utilisées il est possible d’affecter les broches correspondante à un usage général GPIO
Ce serait le cas pour les broches ici entourées en orange. Par exemple le capteur endstop X min s’il n’est pas utilisé, sa broche P1.24 pourrait être affecté à autre chose.
II ) Exemple de configuration de port GPIO
A ) GPIO en sortie
a1 ) Commander un relais statique pour démarrer et éteindre la broche à partir du Gcode
# Switch module for spindle control
switch.spindle.enable true #
switch.spindle.input_on_command M3 #
switch.spindle.input_off_command M5 #
switch.spindle.output_pin 1.22 #
switch.spindle.output_type digital # just an on or off pin
B ) GPIO en entrée
b1 ) Créer un bouton pause qui suspend l’usinage lors d’un premier appui et le reprend en appuyant une seconde fois
# Switch module for pause button
switch.pause.enable true # Enable this module
switch.pause.input_pin 2.11^ # Pin where pause button is connected
switch.pause.output_on_command suspend # Suspend command
switch.pause.output_off_command resume # Resume command
switch.pause.input_pin_behavior toggle # This pin toggles between it’s on and off states each time it is pressed and released
after_suspend_gcode M5 # Gcode to run after suspend
before_resume_gcode M3 # Gcode to run before resume
b2 ) Créer un bouton reset pour redémarrer la carte smoothieboard
# Switch module for reset button
switch.reset.enable true # Enable this module
switch.reset.input_pin 3.26^ # Pin where reset button is connected
switch.reset.output_on_command reset # Command to reset the board
b3 ) Avoir un bouton kill qui arrête et annule immédiatement l’usinage
# Kill button (used to be called pause) maybe assigned to a different pin, set to the onboard pin by default
kill_button_enable true # set to true to enable a kill button
kill_button_pin 2.12 # kill button pin. default is same as pause button 2.12 (2.11 is another good choice)
0 commentaires