Macchina a controllo numerico CNC - fattibile

Moderatore: jpquattro

Rispondi
Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 11 feb 2013, 19:51

Da anni leggo documenti sull'argomento, ma spesso si legge di fallimenti clamorosi, con programmi astrusi che danno uscite inesistenti o inefficaci, mentre pippo ci ha descritto un esempio positivo sperimentale. Secondo me il punto è mettere assieme quello che sappiamo e comporre i pezzi passo passo, e se è necessario, passando pure per la scrittura dei programmi.
Intanto comincio a mettere dei link basilari.
La fattibilità autonoma è d'obbligo, visto che anch'io come maxlinux2000
io per ora come molti "no tengo dinero o o o o"


:mrgreen: :mrgreen: :mrgreen:

Una prima scelta è quella del ponte; fisso o mobile.
Io sono nell'ottica di Hal9000 che vuole cose pesanti, ingombranti e scomode, a tutto vantaggio della durata e della semplicità di costruzione, quindi io preferirei il ponte fisso...(?)
http://www.techarena.it/forum/modding/4 ... il-pc.html
ponte fisso:



Nel ponte fisso è il piano di lavoro a muoversi mentre il ponte della fresa è fermo fissato alla struttra della macchina.

Vantaggi:
La macchina è più robusta e regge lavorazioni pesanti, nelle frese a cnc industriali per la lavoarzione di metalli ferrosi è il pezzo a muoversi in X e Y sotto la fresa in questo modo il centro dell'utensile lavora sempre al centro delle guide, che equivale al punto più robusto della macchina.

Svantaggi:
Rapporto area di lavoro/ingombro svantaggioso: nell'esempio animato se costruiamo una macchina con un'area di lavoro di 400mm, servono 800mm di spazio per la corsa del piano di lavoro, A4 ha le traverse di sostegno del piano di lavoro ravvicinate in modo da ridurre l'ingombri finali, la tavola del piano di lavoro di A4 durante la lavorazione sporge dalla struttura della macchina; se da ferma con il piano di lavoro al centro l'ingombro è contenuto nel fresare ha bisogno di spazio intorno al piano di lavoro, il progetto di A4 è vincolato alle dimensioni di un foglio di stampa A4 la soluzione del ponte fisso permette ai pezzi di restare in un foglio di stampa A4, non è stato facile massimizzare le corse avendo a disposizione solo le dimensioni di un foglio A4, tuttavia riducendo l'area di lavoro è possibile creare una seconda versione di A4 a ponte mobile al momento è in fase di progettazione...

Ponte Mobile:



Nel ponte mobile il pezzo à fermo ed è il ponte che regge la fresa a muoversi verso il pezzo

Vantaggi:
Si può creare un'area di lavoro enorme senza ulteriori ingombri,

Svantaggi
Il punto debole delle guide sospese è il centro delle guide in quella zona flettono parecchio, la combinazione ponte stretto nel centro delle guide crea flessioni, le ponti fisso hanno un piano di lavoro molto più lungo quando il piano di lavoro si trova al centro grazie alla distanza tra le 2 boccole che reggono il piano di lavoro, la distanza tra il supporto delle guide e le boccole è pari alla metà della corsa "le boccole sono sempre lontane dal centro delle guide a tutto vantaggio della stabilità" le ultime cnc a ponte mobile per soperrire a questo problema montano delle guide a pattini a ricircolo di sfere, le guide sono ancorate alla struttura della macchina questo da un'ottima stabilità alla fresa, ma il costo delle guide non è popolare, su una struttura di legno sono sprecate, chi monta pattini a ricircolo punta su strutture in alluminio...
A4 è una ponte fisso senza la stabilità che regala una ponte fisso comune con i supporti ai bordi delle guide...
Allegati
asse x ponte mobile.gif
asse x ponte mobile.gif (106.89 KiB) Visto 12886 volte
asse x ponte fisso.gif
asse x ponte fisso.gif (92.06 KiB) Visto 12886 volte

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 11 feb 2013, 20:09

Inserisco altri link utili per cominciare a rifletterci.
Copio e linko perché ogfni tanto questi siti sintetici spariscono nel nulla.

http://www.hobbild.com/Tutorial/usareCAD.htm
Come usare il CAD per tagliare sagome


Aggiornamento al 04/08/2008
La procedura che vi descriverò sotto è il primo sistema che usavo per la realizzazione dei percorsi utensili.
Ora però utilizzo programmi molto più performanti che permettono di ricavare da un disegno vettoriale, direttamente il percorso utensile in funzione anche del tipo e diametro fresa utilizzato.
Un ottimo programma è ArtCam Insignia, è un programma molto professionale ma anche semplice ed intuitivo all’uso.
Non ritengo necessario descriverne l’utilizzo ora, ma se cercate nel web, trovate diversi tutorial per il suo uso.

Vecchio (ma pur sempre valido), procedimento
In questa piccola descrizione, cerco di spiegare come usare il CAD (ossia un programma per eseguire disegni mediante il computer, vedi Autocad), per generare il percorso che dovrà compiere le nostra fresa a CNC per ritagliare sagome, quali potrebbero essere centine alari, ordinate o qualsiasi altra cosa.
Oltre al CAD, verrà usato il programma ACE che trasformerà il nostro disegno da formato .dxf a percorso G-code.
Come programma di controllo fresa, farò riferimento al programma DeskNC
Parto con questo programma perché è molto semplice da usare, costa relativamente poco e funziona su un modesto PC reperibile facilmente a basso prezzo e lasciarlo dedicato al controllo fresa.
Nel web si trovano miriadi di programmi molto più sofisticati del DeskNC, ma se dovete imparare il mio consiglio è di partire con cose semplici, poco costose e che vi permettono di capire come e cosa dovete fare, poi gradatamente potete passare a programmi migliori, che richiederanno una licenza più costosa e un PC più evoluto, ma a questo punto sarete pronti per arrangiarvi da soli.
La mia filosofia e quella di imparare ad usare la bicicletta per poi andare in macchina, se poi la bicicletta vi basta: tanto di guadagnato.
Scusate questa noiosa introduzione.
Do per scontato che sappiate usare un programma di disegno elettronico detto: CAD.
In commercio ne trovate molti tipi e a vari prezzi, il più conosciuto è Autocad; l’importante è che riesca a salvare in formato “.dxf”, ossia che l’estensione del file che salvate sia per esempio “centina.dxf”.
Io come CAD uso Think3 che può salvare anche in formato .dxf.
Partiamo quindi con il profilo della centina che avete disegnato con il CAD o che avete ricavato da un disegno complessivo sempre in formato CAD.
Nel web potete trovare questi disegni si in formato .dxf che .dwg oppure .gif o .jpg.
Se andate sul sito Profili2 nella sezione "Disegni e progetti"potrete trovare una meravigliosa racolta di disegni di aeromodelli divisi per varie categorie


Se sono in .gif o .jpg non sono adatti allo scopo; se sono in formato .dwg li potete caricare nel vostro programma CAD e risalvarli in formato .dxf; normalmente tutti i programmi CAD lo permettono.
Il disegno che vedete sopra è infatti in formato .dwg.
Controllate che tutto il contorno del profilo sia su di un solo livello o layer, togliete tutti i testi e le quote eventualmente presenti, spostate inoltre il profilo vicino alle coordinate /00 del disegno.

Controllate che tutto il contorno del profilo sia su di un solo livello o layer, togliete tutti i testi e le quote eventualmente presenti, spostate inoltre il profilo vicino alle coordinate /00 del disegno.
Cosa molto importante è che il profilo non sia una poliline o un blocco (o gruppo); in questo caso dovete “esplodere” (ridurre in primitive) il profilo.

Voglio precisare che tutti i disegni fatti sono in 2D (due dimensioni, bidimensionali, come fossero fatti a penna), e non 3D (solidi, con tre dimensioni), dico questo perché ho visto nel web parecchia confusione per quello che riguarda la fresatura 3d, cercherò di affrontare anche questa lavorazione in seguito.
Alla fine del lavoro dovrete avere solo il profilo da tagliare, nella figura a lato ho messo le coordinate del disegno solo per farvi capire dove risulta lo /00; naturalmente queste vanno tolte.
Il punto /00 è importante perché è il punto di partenza anche per la fresa.
Ora, se noi generiamo il G-code, ossia il file che contiene tutte le informazioni necessarie al programma di controllo (DeskNC) per far muovere i motori passo-passo, otterremmo una centina tagliata come nel disegno seguente specificato con la parte tratteggiata.
È evidente che la centina risulta essere ridotta in tutto il suo contorno nella misura di metà diametro della fresa di taglio, nel nostro caso di 1.5 mm avendo impiegato una fresa da 3 mm di diametro.

Se noi avessimo tagliato questa centina con il seghetto da traforo, avremmo seguito il profilo da tagliare tenendo la lama del seghetto all’esterno del profilo, lo stesso dovremmo fare anche qui, solamente che dobbiamo disegnare questo nuovo profilo tenendoci esternamente pari a metà diametro della fresa, ossia 1.5 mm.
Per fare questo potete usare opportuni comandi CAD, nel mio caso il comando è l’offset, con il quale ricreo la primitiva ad una distanza impostata; ogni CAD ha un simile comando.
Attenzione, non pensate di “riscalare” il disegno del profilo aumentandolo di dimensione, non è assolutamente la stessa cosa.
Come potete notare, gli spigoli interni della centina risultano raggiati, è evidente che più il diametro della fresa è piccolo e minore è questo raggio, naturalmente il diametro della fresa è in funzione del materiale da tagliare.
A questo punto abbiamo il profilo della centina da tagliare corretto, salvatelo con estensione .dxf facendo attenzione che non sia una poliline o gruppo (vi ricordate quanto detto prima?).




Ora dobbiamo “convertire” questo profilo in formato .dxf nel formato G-code, ossia quello che può leggere il nostro DeskNC.
Dobbiamo convertirlo in G-code, e per fare questo ci viene in aiuto ACE.
ACE è un piccolo programma che legge i file .dxf e li trasforma in G-code.
E molto semplice da usare, ha un manuale (in inglese).
Quando usate ACE ricordatevi che lui vede i livelli nei quali sono presenti delle primitive, e per ogni livello vi chiede la priorità ed il valore di Z.
Quando date il comando “Convert”, vi chiede dove salvare il file in formato .txt, vi consiglio di salvarlo nello stesso direttorio dove avete installato DeskNC


Piccola descrizione del G-code

Voglio dare una semplicistica spiegazione di cos’è il G-code.
Supponiamo di avere un amico che si trova dentro una grande scacchiera formata da migliaia di caselle, ognuna delle quali è individuata grazie ad un sistema di coordinate X e Y .
Quando noi diciamo a questo amico di spostarsi in X3 e Y6, lui si sposta, partendo come riferimento da un angolo di riferimento della scacchiera, di 3 caselle in X e 6 in Y.
L’angolo di riferimento lo indichiamo come punto /00, ossia come origine del sistema di coordinate, è praticamente il punto vicino al quale noi abbiamo disegnato il profilo della centina con il CAD.
A questo amico (poverino), abbiamo messo in mano un grosso pennarello nero, dicendogli di tenerlo alto rispetto al suolo(asse Z) di Z centimetri, logico che se gli diciamo Z0 il pennarello scrive per terra.
Vi piace come esempio? Nooo? Pazienza…continuo.
Ora diciamo al nostro amico di spostarsi “velocemente” in X45,Y60,Z40, (comando G00 in G-code).
L’amico fidato si sposta alla sua massima velocità contando dal punto di origine della scacchiera (coordinate assolute di riferimento, G90 in G-code),45 caselle in X e 60 in Y, tenendo il pennarello ad una altezza di 40 centimetri dal suolo.
Ora gli diciamo di “camminare” da questo punto fino a X60,Y80,Z0 (comando G01 in G-code, movimento lineare ad una data velocità), lui ci disegnerà sul suolo una linea che parte da X45,Y60 fino a X60,Y80.
Adesso l’amico lo possiamo far muovere sulla scacchiera in qualsiasi punto, e vedremo il suo spostamento disegnato.
È talmente bravo che possiamo dirgli che in un dato punto ci disegni un cerchio (comando G02 o G03).
Avete capito che il G-code è un linguaggio grazie al quale la nostra fresa si muove e lavora, e come tutti i linguaggi, ci sono delle forme “dialettali”, ossia se noi diciamo al nostro amico “G18”, questo non sa cosa fare perché è un comando che non conosce.
Ogni “amico” , che nel nostro caso è il DeskNC, ha un set di comandi G-code che riconosce, e gli devono essere detti in una determinata maniera, il tutto lo definiremo come “Post-processore” del programma cnc di controllo.
Ad esempio DeskNC riconosce i seguenti comandi:
G00 Rapid travel at maximum feedrate.
G01 Linear interpolation at current feedrate.
G02 Clockwise circular interpolation at current feedrate. X-Y plane only.
G03 CounterClockwise circular interpolation at current feedrate. X-Y plane only.
G04 Dwell in tenths of a second. Eg. G04 X10 will dwell for 1 second.
G81 Drill cycle.
G90 Absolute coordinates (Assumed).
G92 Set Coordinates
M00 Program Stop
M02 Program end
M07 Coolant On
M08 Coolant On
M09 Coolant Off
Txx Tool change to tool xx
Naturalmente i comandi G-code sono molti di più, ed alcuni sono personalizzazioni per un determinato cnc.

Non dovete comunque preoccuparvi di dover imparare questi comandi e come usarli, ci sono per fortuna diversi programmi che convertono i nostri disegni in formato .dxf o semplici testi direttamente in formato G-code.
Nel web troverete tutorial decisamente più chiari e completi, ma quello che è importante, è capire a cosa serve questo famigerato “G-code”

Avatar utente
mastrovetraio
Messaggi: 2846
Iscritto il: 25 nov 2012, 14:01
Località: provincia di Ferrara
Contatta:

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da mastrovetraio » 11 feb 2013, 20:12

Ponte mobile, se fatto bene e cioè il più leggero possibile avrà poca inerzia, ed è ottimo se deve "correre".
Ma questo dovrebbe dirlo chi cel'ha.

Avatar utente
maxlinux2000
Amministratore
Messaggi: 7406
Iscritto il: 22 mar 2011, 11:50

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da maxlinux2000 » 11 feb 2013, 21:50

bellino!! :) una cnc in legno mdf

aggiungo qui il link dell'autore: http://www.cncproject.net/

vorrei anche fare notare che una cnc pesante ed stremamente rigida, potrebbe essere fatta in cemento armato :) parafrasando il tornio in cemento trovato dal nostro bravo mastrovetraio
Cogito, ergo NO SUV !!

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 11 feb 2013, 22:28

maxlinux2000, appena avrai un po' di tempo naturalmente, potresti inserire qualcosa di semplice su come usare 2 ambienti di sviluppo: linguaggio C (e un esempio su C++) ed il Visual Basic.
Magari facendo 2 semplici esempi per ogni ambiente di sviluppo (per dirne una: come fare il prodotto di due numeri con il C, con il C++ e con il visual basic), poi ognuno così potrà metterci del suo nel comporre i programmi utilizzabili per il CNC.

Avatar utente
maxlinux2000
Amministratore
Messaggi: 7406
Iscritto il: 22 mar 2011, 11:50

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da maxlinux2000 » 12 feb 2013, 11:17

mi spiace, ma io non uso ne il C en Visual Basic... ma non è un linguaggio morto il visualbasic? A quanto ne so hano terminato lo sviluppo dalle parti di microsoft.

io uso solo linguaggi scripting (shell, php...o python che puó essere entrambi (scriptig o strutturato)
http://it.wikipedia.org/wiki/Python


Qui potrai vedere perché preferisco python o la shell rispetto al C... mi piace scrivere poco :mrgreen:

http://scuola.linux.it/docs/altre_scuol ... mma-python

in bash addirittura è erlementare:

Codice: Seleziona tutto

#!/bin/bash
echo "Uso: ./prodotto.sh <Numero>  <Numero>"
N1=$1
N2=$2
echo "Il prodotto di $N1 per $N2, è $(($N1*$N2))"
Cogito, ergo NO SUV !!

Avatar utente
calcola
Messaggi: 565
Iscritto il: 18 ott 2012, 9:51

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da calcola » 12 feb 2013, 19:22

Bello, ho visto una stampante tridimensionale costruita in questo modo. Invece di scavare estrudeva della plastica che in altezza costruiva gli oggetti.

Costruivano il progettino con il cad, poi un software creava il programma in linguaggio macchina da caricare. Io non ne capisco nulla, però se desiderate qualche info posso chiedere.

Avatar utente
mastrovetraio
Messaggi: 2846
Iscritto il: 25 nov 2012, 14:01
Località: provincia di Ferrara
Contatta:

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da mastrovetraio » 12 feb 2013, 19:57

Io fresatrici cnc le ho viste solo sul web, mentre invece ho visto di persona parecchia robotica, roba da urlo. La più bella era un braccio robotico che maneggiava pacchi di giornali appena stampati, ero presente alla taratura, durata parecchi giorni, ed al collaudo finale dove l'hanno fatta andare al 120% delle sue possibilità. Vi assicuro che è stato uno spettacolo, anche perchè era un braccio abbastanza antropomorfo, anche se misurava 6 metri di "sbraccio". Tornando al cnc bisognerebbe prima capire che materiale deve lavorare. Se è roba pesante non credo che sia possibile il ponte fisso. Ai tempi in cui facevo vetrate mi sarebbe servito un plotter da taglio, ma ai quei tempi ci voleva un'enormità. In fin dei conti un plotter da taglio o una fresatrice cnc a due assi è la stessa cosa, quindi ho le orecchie ben dritte.

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 14 feb 2013, 0:00

Io non ne capisco nulla, però se desiderate qualche info posso chiedere.

Calcola, fai pure, io non credo di saperne chissà quanto, c'è sempre da imparare.

Mastrovetraio, dici che il ponte mobile può creare problemi per l'acciaio?

maxlinux2000, puoi fare un esempio sulla differenza tra il C ed i linguaggi scripting che usi tu? Pare che quelli che usi siano linguaggi molto più semplici del C :D

Avatar utente
maxlinux2000
Amministratore
Messaggi: 7406
Iscritto il: 22 mar 2011, 11:50

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da maxlinux2000 » 14 feb 2013, 9:01

infatti python è molto più semplice del C (linguaggio inventato a principio degli anni '70)

ti riporto qui l'esempio di programma per dare la somma di due numeri del link precedente

max@debian:~/Documents/Sources/Python$ ./somma.py 1 1
1 + 1 = 2
max@debian:~/Documents/Sources/Python$

Codice: Seleziona tutto

#! /usr/bin/env python
##
## somma.py <x> <y>
## Somma esclusivamente valori positivi.
##
#
# Importa il modulo sys, per usare sys.argv
#
import sys
#
# somma(<x>, <y>)
#
def somma(x, y):
  z = x
  for i in range(y):
    z += 1
  return z
#
# Inizio del programma.
#
x = int(sys.argv[1])
y = int(sys.argv[2])
z = somma(x, y)
print x, "+", y, "=", z


....ed ecco l'equivalente in C

Codice: Seleziona tutto

/* ================================================================= */
/* somma <x> <y>                                                     */
/* Somma esclusivamente valori positivi.                             */
/* ================================================================= */

#include <stdio.h>

/* ================================================================= */
/* somma (<x>, <y>)                                                  */
/* ----------------------------------------------------------------- */
int somma (int x, int y)
{
    int z = x;
    int i;

    for (i = 1; i <= y; i++)
      {
        z++;
      };

    return z;
}

/* ================================================================= */
/* Inizio del programma.                                             */
/* ----------------------------------------------------------------- */
int main (int argc, char *argv[])
{
    int x;
    int y;
    int z;

    /* Converte le stringhe ottenute dalla riga di comando in
       numeri interi e li assegna alle variabili x e y.              */
    sscanf (argv[1], "%d", &x);
    sscanf (argv[2], "%d", &y);

    z = somma (x, y);

    printf ("%d + %d = %d\n", x, y, z);

    return 0;
}


in python solo dieci righe «utili» , contro le 22 dell'equivalente in C :mrgreen:
Cogito, ergo NO SUV !!

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 14 feb 2013, 18:50

La miseria, pare che devo aggiornarmi :mrgreen: :mrgreen:

Avatar utente
mastrovetraio
Messaggi: 2846
Iscritto il: 25 nov 2012, 14:01
Località: provincia di Ferrara
Contatta:

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da mastrovetraio » 14 feb 2013, 20:09

Ponte mobile, ponte fisso, quando hai aperto la discussione pensavo parlassi di denti :mrgreen:
Bisognerebbe intanto vedere cosa c'è in commercio per capire i pro e i contro di ogni dettaglio. Io partirei dalla fine, definendo qual'è il "tagliente" più impegnativo che si utilizzerà ovvero il diametro massimo della fresa. Questo diametro decide di per sè il n° di giri del motore. Dopodichè va decisa la massima velocità di avanzamento della fresa che è quella che dimensiona il motore per quanto riguarda la potenza. Faccio un esempio iperbolico. Se per fare una fresatura su acciaio ho fretta, devo produrre e guadagnare allora il motore sarà suprpotente ed il n. di giri della fresa sarà il massimo possibile. Se invece non ho nessuna fretta, il motore può essere di potenza minima, tanto si arrangia il computer, anche se ci metto una settimana invece che un'ora chissenefrega. E qui arriva il ponte, che sia mobile o fisso non cambia proprio nulla, gli sforzi che deve sopportare sono identici. È ovvio che se deve sopportare un motore da 5 Hp o un motore da 1/4 di cavallo la musica è ben diversa.
Quindi (secondo me) bisogna decidere che diavolo uno ci vuol fare con questa cnc ma sopratutto i tempi di lavorazione. E non credo assolutamente che esista "UN progetto"

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 15 feb 2013, 0:18

Mastrovetraio, hai perfettamente ragione, non c'è un progetto unico.
Io personalmente vorrei tagliarci legno (es pale d'elica) e lamiera sottile (max 1mm) per trasformatori. E voi cosa ci vorreste fare, giusto per felicitarci con un po' di fantasia concreta :D

Avatar utente
solarino
Messaggi: 110
Iscritto il: 1 set 2012, 16:48

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da solarino » 15 feb 2013, 10:13

Buongiorno a tutti, dopo tanto tempo torno a scrivere su questo meraviglioso forum.
Ho purtroppo dovuto smettere con i miei esperimenti; un sacco di problemi che .... spero di aver iniziato a risolvere.

Ho continuato a seguirvi nel frattemo, zitto zitto, ma i miei sogni, ogni volta che vi leggo, continuano a rinvigorirsi e spero di riuscire nuovamente a riniziare sperimentare.

Riguardo l'argomento della CNC, circa 5 anni fa, provai a realizzarne diverse; volevo realizzare una cnc per la produzione dei pcb (circuiti stampati) e smettere di utilizzare i vari acidi.
Ne ho sperimentate un paio, compreso un progetto presentato su una nota rivista, fatta di legno, e devo dire che per le "dimensioni" che dovevo fresare e' stato un disastro :
togliere rame per separe due piste vicine vicine era un problema e mi ritrovavo senza le due piste :) e poi erano lente ...troppo ente.
Viva la Soda ed il Cloruro. Viso che ho ancora tanta soda provero' a fare il sapone.

Per quanto riguarda i linguaggi di programmazione, non ho capito a che cosa servono con la CNC.
Io utilizzavo un CAD che generava un file da dare in pasto ad un programma che pilotava tramite la porta parallela il gruppo di controllo dei motori.

tante informazioni le trovate su http://www.cncitalia.net/ e http://www.probotix.com/cnc_software/


Per dare un po di fastidio a offgrid (non me ne voglia) in C e' sufficiente scrivere :


#include <stdio.h>
#include <stdlib.h>
int main(int argc, char* argv[])
{
printf("La somma e' = %d", atoi(argv[1]) + atoi(argv[2]) );
}

Solo 6 righe!!!!

Se volete vi aiuto con il C.

saluti

Avatar utente
maxlinux2000
Amministratore
Messaggi: 7406
Iscritto il: 22 mar 2011, 11:50

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da maxlinux2000 » 15 feb 2013, 15:29

in effetti anche io non ricorco perché abbiamo sviato verso i linguaggi di programmazione.... ma fa niente!!

per il C.... ma tu bari!! :mrgreen: il codice non è leggibile !!! :)

guarda questo esempio in perl... decodifica i DVD protetti

Codice: Seleziona tutto

#!/usr/bin/perl
# 472-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit.edu>
# MPEG 2 PS VOB file -> descrambled output on stdout.
# usage: perl -I <k1>:<k2>:<k3>:<k4>:<k5> qrpff
# where k1..k5 are the title key bytes in least to most-significant order

s''$/=\2048;while(<>){G=29;R=142;if((@a=unqT="C*",_)[20]&48){D=89;_=unqb24,qT,@
b=map{ord qB8,unqb8,qT,_^$a[--D]}@INC;s/...$/1$&/;Q=unqV,qb25,_;H=73;O=$b[4]<<9
|256|$b[3];Q=Q>>8^(P=(E=255)&(Q>>12^Q>>4^Q/8^Q))<<17,O=O>>8^(E&(F=(S=O>>14&7^O)
^S*8^S<<6))<<9,_=(map{U=_%16orE^=R^=110&(S=(unqT,"\xb\ntd\xbz\x14d")[_/16%8]);E
^=(72,@z=(64,72,G^=12*(U-2?0:S&17)),H^=_%64?12:0,@z)[_%8]}(16..271))[_]^((D>>=8
)+=P+(~F&E))for@a[128..$#a]}print+qT,@a}';s/[D-HO-U_]/\$$&/g;s/q/pack+/g;eval


funziona.... ma non si capisce niente di quello che fa
Cogito, ergo NO SUV !!

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 18 feb 2013, 22:39

Per quanto riguarda i linguaggi di programmazione, non ho capito a che cosa servono con la CNC

La mia intenzione era quella di scrivere un programma che direttamente invia segnali alla porta usb per pilotare un motore stepper bifase, in modo da saltare tutti i convertitori su cui sono impazzito per mesi e mesi tempo fa. Mi sono veramente stufato di usare programmi closed source :mrgreen: , i programmi importanti e semplici me li vorrei fare OFFGRID :D.
Un po' come maxlinux2000 che ha scritto su come fare il pane in casa.

In particolare, io mi sentirei di scrivermi pure su foglio di calcolo la sequenza dei punti della traiettoria da fresare, questo non è un problema, ma poi dal foglio di calcolo si deve far uscire dalla porta USB, come si usa questa porta? Ho cercato almeno in 5 manuali per linguaggio C, ma della porta nemmeno l'ombra :(

Avatar utente
solarino
Messaggi: 110
Iscritto il: 1 set 2012, 16:48

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da solarino » 19 feb 2013, 15:34

Ciao elettrauto, il problema della USB non e' facimente solvibile, cioe' come una semplice seriale. L'USB devi utilizzarla come mezzo di comunicazione, fisico, tramite uno dei possibili protocolli logici ( CDC, cioe' seriale, HID ......) che ti mettono a disposizione i sistemi operativi.
mi spiego meglio :
se vuoi far "parlare" il PC con una CNC, la CNC deve essere fornita di una USB, ed il produttore deve fornirti il driver di comunicazione (HID driver standard linux/win/macosx ) se proprietario, o ti dira' per esempio di trattare la connessione verso la CNC come una semplice linea seriale (CDC driver di windows/linux o proprietario ) ed il protocollo da utilizzare (esempio vai a riga 4 colonna 10 incidi per 4 mm )

altrimenti devi svilupparti la scheda di controllo della cnc ed i driver di comunicazione verso tale scheda compreso il protocollo; quindi dal foglio elettronico si genera il formato da inviare alla scheda e si pilota ad esempio tramite emulazione seriale su USB (CDC) o HID. La scheda dovra' ad esempio pilotare gli stepper etc etc

Non so se sono stato chiaro. Se hai dubbi su quello che ho scritto, fammi sapere
saluti

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 19 feb 2013, 22:15

Ciao solarino, intanto grazie per la tua disponibilità!!
Non capisco la sigla CDC ed HID.
Ti dico meglio quale è la mia intenzione offgrid: voglio che con un semplice foglio di calcolo, od un semplice compilatore C io scriva dei numeri in sequenza e li possa memorizzare in un file, cosa che sappiamo possibile con un text editor per popi farlo mangiare al compilatore.
Una volta che io genero ad esempio 10 11 10 da dare alla faseA e faseB del primo motore stepper bifase, e dò la stessa sequenza al secondo motore, io sto generando una retta di taglio a 45°, su questo non ci sono dubbi, ho studiato la cosa in modo approfondito e non ho incertezze (se però credi ci siano dubbi, per me una cosa non è mai definitiva).

Ora per generare un profilo ad evolvente di cerchio per esempio per una ruota dentata posso ricavarmi l'equazione partendo dalle coordinate polari e fare il cambio di coordinate in cartesiane, e finanche qui problemi non ce ne sono, poi con il windows o linux ed un foglio di calcolo dovrei costruire con copia incolla e funzioni che non ho problemi a stilare, tutta la sequenza discretizzandola ad esempio con una precisione di 0,1mm o 0,05mm con una forte demoltiplica quale è quella ottenuta con le classiche barre filettate.

Una volta che ho mandato in pensione il GCODE e reso open ed offgrid totalmente la cosa ho davanti a me la sequenza di numeri che è la sola che darà la traiettoria all'utensile, e io sono in grado di costruirla, ma manca un anello, farla uscire dal pc e farla andare all'amplificatore (buffer o booster chiamato in ambo i modi di solito).
Una volta i pc avevano la porta seriale e parallela, ma ora hanno tolto la seriale e mi dicono anche la parallela, pare sia rimasta solo la usb.

L'alternativa sarebbe prelevare i segnali dallo slot PCI... Tu che alternativa vedi per fare uscire bit dal foglio excel?
ciao
elettrauto

Avatar utente
solarino
Messaggi: 110
Iscritto il: 1 set 2012, 16:48

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da solarino » 19 feb 2013, 22:43

L'usb sono 4 fili (almeno sino allo standard 2) alimentazione massa e due fili di dati bilanciati. La puoi vedere come una seriale. Lo standard definisce diverse modalità di scambio dati definiti tramite i controller a monte e a valle del usb . Le diverse modalità di scambio si Differenziano per il numero di byte scambiati/velocità e tipo di protocollo. La cdc (communications deviceclass) la puoi vedere come una seriale.la hid(humaninterface device) é un protocollo lento i.e. Mouse keyboard . I due protocolli hanno "chimate " di sistema differenti e driver differenti.
Per scambiare dati io uso la seriale(tramite adattatore usb seriale con driver cdc) o l'usb . In entrambi i casi mi scrivo il sw su linux/windows o mac e il sw lato scheda da pilotare dotata di seriale o usb. Per il protocollo di scambio informazioni fammi pensare.....
Comunque lato stepper devi avere un controllore , dotato di usb o seriale,che piloti i driver.
Saluti

Avatar utente
elettrauto
Messaggi: 502
Iscritto il: 13 lug 2012, 18:49

Re: Macchina a controllo numerico CNC - fattibile

Messaggio da elettrauto » 20 feb 2013, 17:11

Comunque lato stepper devi avere un controllore

Solarino, sono lieto per chi è riuscito ad usare un microcontrollore, io ne ho bruciati almeno 6 del costo di 9 euro a pezzo, con diversi programmatori trovati in rete (quelli della casa madre costano 350 euro) e di cui solo uno alla fine ha funzionato, ma grazie ad una modifica che gli ho fatto su un buffer di corrente, altrimenti non avrebbe funzionato nemmeno quello.
Adesso voglio proprio fare il circuito driver, alla fine avrei risparmiato tempo, perché con i programmatori ci ho perso quasi 1 anno, e poi appena cambi microcontrollore, se il precedente non viene più prodotto, sono cavoli amari, ti cambiano le tensioni di programmazione e sei di nuovo punto e a capo, per lo meno è stata la mia esperienza.

Ieri sono andato a vedere un portatile e mi sono reso conto che non ha più la porta seriale né quella parallela, ha solo una VGA a 15 poli per un eventuale proiettore; la RS232 a 9 poli non c'è e nemmeno quella a 25. Ha 4 porte usb ed un aggancio per il doppino telefonico.
Quindi su un pc nuovo si può solo usare la USB e bisogna vedere di sbrandizzarla, a meno che non si voglia tornare al nastro perforato come i telai degli anni 60 :mrgreen:

Rispondi

Torna a “attrezzatura home made”

Chi c’è in linea

Visitano il forum: Nessuno e 113 ospiti