cliche1995 Inserita: 17 ottobre 2014 Autore Segnala Share Inserita: 17 ottobre 2014 (modificato) quell'animazione mi ha fatto capire proprio tutto! grazie mille a tutti, comunque la vita senza fine è fatta in modo che ogni poco ferma la tavola giusto? come faccio a far si che quando ho il sensore selezionato mi fermi la macchina per esempio 15 secondi? Modificato: 17 ottobre 2014 da cliche1995 Link al commento Condividi su altri siti More sharing options...
walterword Inserita: 17 ottobre 2014 Segnala Share Inserita: 17 ottobre 2014 Livio , Livio ......chissà se prima di natale , intendo di quest'anno , riusciamo a trovarci ....lo sento io Claudio Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 17 ottobre 2014 Segnala Share Inserita: 17 ottobre 2014 cliche1995: ... come faccio a far si che quando ho il sensore selezionato mi fermi la macchina per esempio 15 secondi? Spiegati meglio, non ho capito cosa intendi: perchè dovresti tenere ferma la macchina per 15 secondi ? Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 17 ottobre 2014 Autore Segnala Share Inserita: 17 ottobre 2014 per fare si che le stazioni riescano a lavorare... nell'animazione che mi ha mandato step la tavola rimane ferma pochissimo tempo Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 17 ottobre 2014 Segnala Share Inserita: 17 ottobre 2014 No, non devi mettere un tempo, ma devi attendere che tutte le stazioni ti restituiscano i consensi per ripartire (fuori ingombro e fine ciclo): potrebbe essere 1 secondo oppure più di 15 secondi se una stazione si è bloccata. Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 17 ottobre 2014 Autore Segnala Share Inserita: 17 ottobre 2014 ah adesso capisco, per esempio: ogni stazione quando inizia a lavorare mi setta un bit, ognuno di questi bit quando è ad 1 non mi permette di fare ruotare la tavola, ogni volta che una stazione termina il lavoro dovuto, resetto il bit. Dico bene? Link al commento Condividi su altri siti More sharing options...
Giuseppe Signorella Inserita: 17 ottobre 2014 Segnala Share Inserita: 17 ottobre 2014 Dico bene? Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 17 ottobre 2014 Autore Segnala Share Inserita: 17 ottobre 2014 (modificato) Un altro problema, io devo fare lavorare le stazioni quando i sensori di esse sono tutti impegnati? Modificato: 17 ottobre 2014 da cliche1995 Link al commento Condividi su altri siti More sharing options...
Giuseppe Signorella Inserita: 17 ottobre 2014 Segnala Share Inserita: 17 ottobre 2014 (modificato) Un altro problema, io devo fare lavorare le stazioni quando i sensori di esse sono tutti impegnati? No, devono lavorare solo le stazioni in cui è presente il pezzo. Se hai stazioni nel quale il pezzo non è presente, quella stazione non deve lavorare. Ipotizziamo che tu hai 8 stazioni, se hai caricato solo 7 pezzi, avrai solo 7 stazioni che devono lavorare ed una che deve stare ferma. Quando tutti i bit delle stazioni sono a zero, passi al ciclo successivo. Modificato: 17 ottobre 2014 da Giuseppe Signorella Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 18 ottobre 2014 Autore Segnala Share Inserita: 18 ottobre 2014 ah capito grazie mille Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 18 ottobre 2014 Autore Segnala Share Inserita: 18 ottobre 2014 (modificato) Ragazzi, ho realizzato un piccolo progettino di una tavola, il link è questo: http://speedy.sh/KShSh/Prova-Tavola-rotante.rar Modificato: 18 ottobre 2014 da cliche1995 Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 Ho dato un occhiata veloce a quello che hai fatto e ... ti meriti una tirata di orecchie: - separa bene tutte le funzionalità in blocchi distinti (marcia/arresto, tavola e stazioni); più riesci a semplificare l'impianto in piccole unità e meglio riesci a gestirle, oltre a risultare più comprensibile. - non hai usato l'istruzione di shift o, almeno, mi è sfuggito: per carità, non è che sia obbligatorio, basta che poi funzioni, ma non stavano discutendo di quello ? - se scrivi due righe di commenti in più, non è che ti arrestano ... Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 21 ottobre 2014 Autore Segnala Share Inserita: 21 ottobre 2014 La parte dello shift mi mette in difficoltà Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 Ti abbiamo dato delle indicazioni, almeno prova a scriverla ... Se vuoi fare questo lavoro, ti assicuro che le difficoltà abbondano: il funzionamento dello shift è il minore dei mali, perchè una volta imparato, almeno quello è a posto ... Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 21 ottobre 2014 Autore Segnala Share Inserita: 21 ottobre 2014 nel programma che ho realizzato io, al posto di cosa la metto lo shift? Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 Al posto dello shift metti...uno shift. Se vuoi complicarti la vita ti costrusci un vettore che contiene le varie stazioni e poi incrementi il puntatore ad ogni movimento. Cerco di spiegartelo con un esempio. Ammetti di avere 8 stazioni di lavoro. Alla prima corrispondera il bit 0 di un byte, alla seconda il bit 1 e così via sino alla stazione 8 che corrisponde al bit 7. Quando una stazione si carica il bit corrisponde va ad "1" e va a "0" quando si sscarica. Alla partenza trovi la stazione 1 sul punto di carico ed il contatore è a 0. Se carichi un pezzo il bit passa ad 1; quando fai avanzare di un passo la tavola incrementi il contatore, così sai quale stazione è arrivata al punto di carico e sai quanti passi ha fatto la tavola. Alla fine ti sei costruito un sistema simile ad uno shift, ma molto più macchinoso. Morale: questo è un problema che si risolve con un'istruzione di shift, quindi impara ad usare gli shift; tra l'altro è un'operazione che ha tantissimi impieghi. Ad esempio permette di moltiplicare e dividere per 2 in modo rapidissimo. Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 Anche se hai già la spiegazione di Livio, provo ad aggiungere qualcosa: - Scrivi un ciclo per la sola tavola in un blocco separato; così facendo puoi anche impedire alle stazioni di lavorare se il ciclo tavola non è terminato - Crea in un DB un dato tavola composto da un byte; dovrebbe bastare per le stazioni che hai inserito (un byte=8 bit=8 stazioni compreso il carico) - Nel blocco della stazione di carico, quando carichi il pezzo, metti ON il bit 0 dei dati tavola (che corrisponde alla stazione di carico) - Gestisci il sensore di posizione della tavola (non ricordo se l'avevi messo) in modo che quando si attiva dopo la rotazione, esegui l'istruzione shift; mettici anche un rilevamento del fronte di salita per sicurezza prima dell'istruzione (così se non lo conosci, impari anche quello) - Quando devono lavorare le altre stazioni (non quella di carico) a fine rotazione, controlla il bit dei dati tavola (quel byte che hai aggiunto), nel sistema che ti ha indicato Livio; il bit 1 sarà la prima stazione dopo quella di carico (che era il bit 0) e così via; se il bit è ON la stazione deve lavorare, altrimenti puoi dare il fine ciclo senza lavorare Fatto questo e verificato che funzioni, puoi pensare di aggiungere un ciclo di svuotamento e, magari, un po' di allarmi ... Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 21 ottobre 2014 Autore Segnala Share Inserita: 21 ottobre 2014 vi ringrazio, ma io le conosco le istruzioni, sia lo shift che i fronti, con lo shift ho realizzato per esempio le luci che crescono e decrescono..quello che non capisco, scusatemi se faccio fatica è: se devo usare un byte solo per la tavole e un altro byte per le stazioni oppure mettere tutto insieme. Link al commento Condividi su altri siti More sharing options...
walterword Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 troppo facile lo shift di un bit che memorizza uno stato Devi progettare un'area dati DB globale che contiene tutte le caratteristiche , gli stati , le scelte ect del pezzo in produzione in ogni stazione ....dalla prima all'ultima Poi per implementare le routines di manipolazione di tale struttura ti fai aiutare dagli amici tavarish che sanno tutti sui puntatori , cosi fai doppio esercizio Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 21 ottobre 2014 Autore Segnala Share Inserita: 21 ottobre 2014 forse è meglio che lascio perdere Link al commento Condividi su altri siti More sharing options...
Giuseppe Signorella Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 forse è meglio che lascio perdere Troppo facile. Arrendersi senza neanche provare? Arrendersi senza avere dinanzi ancora nessuna difficoltà? (Visto che il programma non lo hai ancora scritto). Proprio ora che comincia la parte più divertente...... Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 21 ottobre 2014 Autore Segnala Share Inserita: 21 ottobre 2014 Giuseppe, ci ho provato tante volte, lo ho anche postato un programma... è già un bel po che provo a scrivere programmi ma niente, non riesco a trovare la soluzione. forse l'unica soluzione è proprio di vederne un programmino già realizzato che mi faccia capire il ragionamento o la tecnica Link al commento Condividi su altri siti More sharing options...
step-80 Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 Purtroppo vedere altri programmi serve ben a poco...in questi casi l'unica soluzione è sbattere la testa finchè non si trova la soluzione..possibilmente spulciando manuali, esempi on-line e quant'altro ti torni utile. Ancora meglio se hai l'hardware a disposizione Link al commento Condividi su altri siti More sharing options...
cliche1995 Inserita: 21 ottobre 2014 Autore Segnala Share Inserita: 21 ottobre 2014 lo so che la soluzione migliore è quella, ma dovete credermi ci ho provato tantissime volte, ho cercato anche in internet ma niente da fare Link al commento Condividi su altri siti More sharing options...
walterword Inserita: 21 ottobre 2014 Segnala Share Inserita: 21 ottobre 2014 usa lo shift , metti a 1 il primo bit se hai la condizione che ti serve sapere come informazione nelle stazioni piu avanti Ad ogni colpo di tavola fai shiftare la word o doppia word che usi per lo shift a sinistra , sul fronte di salita Vedrai il biti "muoversi" nella word , e quando ti serve lo interroghi . Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati