Spécial cahiers de vacances
- itasoft
- Mi homme - Mi automate
- Messages : 7035
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Spécial cahiers de vacances
slts,
oublié la commande des Ejecteurs
oublié la commande des Ejecteurs
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Spécial cahiers de vacances
Ca va demander un supplément de reflexion...
C'est testé, après on peut ajouter le traitement des sorties en longueur d'impulsion. Mais ça c'est que dalle.La pile la plus utilisée: la pile GIGO. Bien plus souvent que les FIFO ou LIFO.
Garbage in, garbage out!
Garbage in, garbage out!
Re: Spécial cahiers de vacances
Le registre va de H10 à H20. Il faut 4 impulsions pour traverser 1 mot.
L’instruction XFRB copie les 4 premiers bits de Objectif bit 0 et + dans H10 bit0 et +.
L'instruction SLD décale de 1 Byte à gauche.
L’instruction XFRB copie les 4 premiers bits de Objectif bit 0 et + dans H10 bit0 et +.
L'instruction SLD décale de 1 Byte à gauche.
La pile la plus utilisée: la pile GIGO. Bien plus souvent que les FIFO ou LIFO.
Garbage in, garbage out!
Garbage in, garbage out!
- maxpeigne
- Créateur de langage
- Messages : 712
- Inscription : 11 oct. 2015, 17:31
- Localisation : Nord pas de calais
Re: Spécial cahiers de vacances
Sur le schèma il y en avait 4 et le cahier des charges ne précisait pas d'extensionitasoft a écrit :@ Maxpeigne
Ta solution marche mais si on a 50 Boxs ça fait beaucoup de lignes de programme à écrire
http://automacile.fr - Site et tutoriels sur l'arduino.
Re: Spécial cahiers de vacances
+1
La pile la plus utilisée: la pile GIGO. Bien plus souvent que les FIFO ou LIFO.
Garbage in, garbage out!
Garbage in, garbage out!
Re: Spécial cahiers de vacances
@itasoft: une seule éjection par cycle de scrutation API ... question efficacité avec du ROL_ARDINT et du FIND_LT_ARDINT ... boff ... copie à revoir
pas de tolérance non plus autour des éjecteurs ... donc si le codeur fait des gros bons, ça ne marche plus
en parlant d'extension et passons à une capacité de 10000 fûts sur le convoyeur et il faudra un M580 secondé par un PC pour faire tourner le truc en temps réel
pourquoi faut-il toujours déplacer de gros volumes de données ? (bon ok 600 octets c'est pas la mort pour un API)
pourquoi faut-il itérer le tableau alors que les valeurs sont toujours croissantes (tableau déjà trié) ?
questions de philosophie ...
@+
pas de tolérance non plus autour des éjecteurs ... donc si le codeur fait des gros bons, ça ne marche plus
en parlant d'extension et passons à une capacité de 10000 fûts sur le convoyeur et il faudra un M580 secondé par un PC pour faire tourner le truc en temps réel
pourquoi faut-il toujours déplacer de gros volumes de données ? (bon ok 600 octets c'est pas la mort pour un API)
pourquoi faut-il itérer le tableau alors que les valeurs sont toujours croissantes (tableau déjà trié) ?
questions de philosophie ...
@+
Re: Spécial cahiers de vacances
ceci dit, après relecture, ça a un avantage dans le sens où tu as tourné ce problème.
tu peux effectivement mettre autant d'éjecteurs que tu veux sans trop bosser
par contre, il ne faut pas rallonger le convoyeur ...
pourquoi pas, fallait y penser
@+
tu peux effectivement mettre autant d'éjecteurs que tu veux sans trop bosser
par contre, il ne faut pas rallonger le convoyeur ...
pourquoi pas, fallait y penser
@+
- itasoft
- Mi homme - Mi automate
- Messages : 7035
- Inscription : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Spécial cahiers de vacances
@steph,
d'accord avec toi si les fûts se déplacent à la vitesse de la lumière, ceci dit c'est pour pousser les fûts , on est pas au mm près.
sinon on peut mettre plusieurs lignes FIND_ mais ça rompe le charme, LOL
d'accord avec toi si les fûts se déplacent à la vitesse de la lumière, ceci dit c'est pour pousser les fûts , on est pas au mm près.
sinon on peut mettre plusieurs lignes FIND_ mais ça rompe le charme, LOL
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Spécial cahiers de vacances
@itasoft : je reconnais que c'est astucieux et qu'il fallait y penser pour tourner le problème dans ce sens là
après ça dépend des applications ... bref du cahier des charges
j'ai déjà eu à travailler sur des lignes de tri pour des planches en bois (tri sur longueur / largeur / épaisseur) avec un convoyeur de 50m et + de 50 boxs sur le parcours et les planches ne sont pas rangées dans des alvéoles (donc pas de simplification avec des "pas" du convoyeur).
charger la CPU en travail, c'est un temps de réponse moindre ... donc davantage de "bonds" au niveau du codeur
je chippote là ; bon +1 pour l'idée et la simplification
et -1 pour mon côté raleur et critique
@+
après ça dépend des applications ... bref du cahier des charges
j'ai déjà eu à travailler sur des lignes de tri pour des planches en bois (tri sur longueur / largeur / épaisseur) avec un convoyeur de 50m et + de 50 boxs sur le parcours et les planches ne sont pas rangées dans des alvéoles (donc pas de simplification avec des "pas" du convoyeur).
charger la CPU en travail, c'est un temps de réponse moindre ... donc davantage de "bonds" au niveau du codeur
je chippote là ; bon +1 pour l'idée et la simplification
et -1 pour mon côté raleur et critique
@+
Re: Spécial cahiers de vacances
salut
je suis en plein boulot, alors les vacances..... bref
moi je ferai un tableau d'une structure.
la taille du tableau correspond au nombre maxi de futs présents sur le tapis.
chaque éléments de tableau serait de type position et numéro de box ou on doit mettre le fut.
quand un fut se présente, je cherche une case de libre dans mon tableau (par ex numéro box =0), je met le numéro de fut et la distance jusqu'au box.
sur front top incrémental, je décrémente les distances dans la tableau.
quand une distance est <=0 alors que le numéro de box<>0, j'active le top éjection correspondant (tableau de bits d'éjection) et je met le numéro de box a 0.
voila, c'est comme cela que je ferais, ce n'est pas forcément le plus optimisé en terme de ressources machines car il faut faire des boucles, mais c le plus simple a programmer et surtout a comprendre.
on pourrais faire des fonctions de tris afin de classer les éléments du tableau dans l'ordre d'ejection, les mettre dans une pile circulaire, mais bon, je ne pense pas que ce soit le plus pertinent (c'est sur que si on a 10000 futs sur le tapis, ca change la donne)...
A+
je suis en plein boulot, alors les vacances..... bref
moi je ferai un tableau d'une structure.
la taille du tableau correspond au nombre maxi de futs présents sur le tapis.
chaque éléments de tableau serait de type position et numéro de box ou on doit mettre le fut.
quand un fut se présente, je cherche une case de libre dans mon tableau (par ex numéro box =0), je met le numéro de fut et la distance jusqu'au box.
sur front top incrémental, je décrémente les distances dans la tableau.
quand une distance est <=0 alors que le numéro de box<>0, j'active le top éjection correspondant (tableau de bits d'éjection) et je met le numéro de box a 0.
voila, c'est comme cela que je ferais, ce n'est pas forcément le plus optimisé en terme de ressources machines car il faut faire des boucles, mais c le plus simple a programmer et surtout a comprendre.
on pourrais faire des fonctions de tris afin de classer les éléments du tableau dans l'ordre d'ejection, les mettre dans une pile circulaire, mais bon, je ne pense pas que ce soit le plus pertinent (c'est sur que si on a 10000 futs sur le tapis, ca change la donne)...
A+