kikirpg
Posts: 9
Joined: Mon Jul 26, 2021 10:14 am

Projet de pachislot

Mon Jul 26, 2021 10:21 am

Bonjour à tous, j'ai un projet de création DIY de pachislot qui trote dans ma tête depuis quelques temps, l'idée serait de gérer la partie mécanique avec un Arduino(moteurs, boutons, lumières), et de gérer la partie média sur un écran avec un raspberry pi 4.
Dans l'idée c'est sympa, mais je n'y connais pas grand chose avec Rasbian, serait-ce à la portée d'un débutant ?
Créer une sorte de script qui reçoit un ordre de l'arduino pour lire tel vidéo sur le raspberry pi.
Merci d'avance pour votre aide :)

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Mon Jul 26, 2021 1:25 pm

vu la complexité et le tremps réel un RPi4 siffira largement.
Le plus gros travail sera l'interface matérielle et de trouver comment actionner/détecter le tout.

kikirpg
Posts: 9
Joined: Mon Jul 26, 2021 10:14 am

Re: Projet de pachislot

Mon Jul 26, 2021 7:19 pm

ok c'est bien ce qui me semblait, mais autant avec l'arduino je devrais me dépatouiller, autant avec le raspberry et Raspbian ça risque dêtre une galère, car je suis totalement novice :?
Au niveau de la compatibilité entre l'arduino et le raspberry, j'ai vu un tuto qui permettrait de comuniquer l'un à l'autre via usb directement.
En passant par une commande sérial, on peut envoyer une donnée au raspberry pi ( même simuler un clavier apperement), maintenant comment faire pour interpéter cette commande et lancer le bon fichier adéquate ?

jelopo
Posts: 1648
Joined: Wed Oct 17, 2012 7:53 pm

A+

Tue Jul 27, 2021 5:57 am

Bonjour,

Les Raspberry ont justement des ports GPIO pour communiquer avec l'extérieur, pourquoi ne pas les utiliser directement plutôt que de passer par un Arduino ?

A+

matiasilva
Posts: 16
Joined: Sun Jul 25, 2021 12:38 pm

Re: Projet de pachislot

Tue Jul 27, 2021 8:57 am

Salut,

Ton projet me semble tres interessant! T'as plusieurs d'options pour le faire. Pour pouvoir comuniquer entre le RPi4 et l'Arduino, il y a beaucoup de protocoles comme I2C, SPI, ou comme tu l'avais dit, le serial/UART. Le UART (TX/RX) me semble le meilleur pour un debutant. Ainsi, tu pourras envoyer des commandes, du texte, etc.. Le RPi4 utilise un système opérateur qui s'appelle Raspberry Pi OS, un distro de Linux. En utilisant Python, tu peux recevoir tes commandes, comme ca: https://www.elinux.org/Serial_port_programming.

L'autre option est utiliser directement les GPIO du RPi4...Chercher sur google "gpio raspberry pi python" te donnera beaucoup de tutos :)

kikirpg
Posts: 9
Joined: Mon Jul 26, 2021 10:14 am

Re: Projet de pachislot

Tue Jul 27, 2021 9:56 am

by jelopo » Tue Jul 27, 2021 5:57 am
Bonjour,

Les Raspberry ont justement des ports GPIO pour communiquer avec l'extérieur, pourquoi ne pas les utiliser directement plutôt que de passer par un Arduino ?
En fait il va y avoir pas mal de input et output à gérer entre les boutons, moteurs, leds, capteurs, donc je préfère me pencher sur un bon Arduino Mega pour gérer tout cela, et utiliser le Pi4 uniquement en reception d'ordres et lecture de vidéos sur écran.
by matiasilva » Tue Jul 27, 2021 8:57 am
Salut,

Ton projet me semble tres interessant! T'as plusieurs d'options pour le faire. Pour pouvoir comuniquer entre le RPi4 et l'Arduino, il y a beaucoup de protocoles comme I2C, SPI, ou comme tu l'avais dit, le serial/UART. Le UART (TX/RX) me semble le meilleur pour un debutant. Ainsi, tu pourras envoyer des commandes, du texte, etc.. Le RPi4 utilise un système opérateur qui s'appelle Raspberry Pi OS, un distro de Linux. En utilisant Python, tu peux recevoir tes commandes, comme ca: https://www.elinux.org/Serial_port_programming.
C'est là que cela va être assez compliqué, Python m'a l'air assez compliqué, je vais devoir en lire des tutos et en faire des tests pour y arriver. Mais j'ai le temps, donc pourquoi pas finalement :D
Sur Python est il possible de lancer des codes directement à l'allumage du Pi ? Pour que je puisse envoyer des données en continue dès l'allumage de l'ensemble ? Ou il faut lancer une commande manuellement ?

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Tue Jul 27, 2021 3:48 pm

ur Python est il possible de lancer des codes directement à l'allumage du Pi ? Pour que je puisse envoyer des données en continue dès l'allumage de l'ensemble ? Ou il faut lancer une commande manuellement ?
Oui (1ère question), bof (2nde question) et non (troisieme question) :

une fois que votre code marchera, il est tout facile de forcer son execution au lancement du RPi/ de son systeme graphique... c'est la dernière phase, la plus facile.

matiasilva
Posts: 16
Joined: Sun Jul 25, 2021 12:38 pm

Re: Projet de pachislot

Tue Jul 27, 2021 9:07 pm

En fait il va y avoir pas mal de input et output à gérer entre les boutons, moteurs, leds, capteurs, donc je préfère me pencher sur un bon Arduino Mega pour gérer tout cela, et utiliser le Pi4 uniquement en reception d'ordres et lecture de vidéos sur écran.
D'accord! Ça a du sens. Si ça t'interesse, Raspberry Pi a lancé un nouveau microcontrôleur comme le Arduino Mega qui s'appelle "Raspberry Pi Pico". C'est pas très cher du tout et très facile de programmer.
Sur Python est il possible de lancer des codes directement à l'allumage du Pi ? Pour que je puisse envoyer des données en continue dès l'allumage de l'ensemble ? Ou il faut lancer une commande manuellement ?
Tout à fait. Le Pi utilise le SO à base du Linux, donc tu peux faire presque tout que tu peux faire avec ton ordi! Si tu preferes tu peux même programmer tout ça en C/C++ et pas avec Python. Pour lancer des codes à l'allumage, tu peux, par example, utiliser "crontab". Lis plus ici: https://www.dexterindustries.com/howto/ ... t-startup/

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Wed Jul 28, 2021 7:48 am

Crontab lance dès le demarrage, avec en environnement restreint, source de desespoir temporaire. On peut aussi lancer au démarrage de lxde (si vous affichez des images, c'est peut être utile) , a priori avec l'environnement complet qui vous a servi à développer https://raspberrypi.stackexchange.com/q ... ely-loaded

Le choix du peripherique: remplace un arduino Mega par un RPI2040/RPi Pico n'est pas du tout une bonne idée s'il n'y a ... pas assez de pattes.. (il est 20 fois moins cher qu'un Mega, a des niveaux compatibles avec le port GPIO du RPi, mais ça ne fait pas pousser les pattes: peut être que 2 picos feraient l'affaire)

Si vous vous en tenez aux Arduini 8 bits, il faut faire attention: ils sont en 5v et le RPi est en 3v et vous risquez donc de frire votre RPi si vous vous connectez en I2C ou SPI... Mieux vaut utiliser le(s) port(s) série UART, soit celui qui sert à programmer et qui a déjà son adaptateur UART USB de soudé sur la carte, soit en mettant un adaptateur USB UART sur un des autres ports série de Mega(ça semble absurde a priori, mais on ne sait jamais où un excès de créativité peut mener)

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Wed Jul 28, 2021 9:11 am

RPI4 avec Arduino ! je rêve !
Vu les problèmes de temps réel de l'application pas besoin d'une super-puissance de calcul.

Je fais tourner un site web sur un PIZERO avec plein d'images !
un chariot avec les moteurs pas à pas et des servos pour diriger une picam !

Le Pizero suffit largement pour faire un pachislot avec une vidéo HDMI.
OK avec le Pizero il faudra des adaptateurs pour le développement (HDMI et USB).
Quelle que soit la solution matérielle il faudra commander les moteurs (à moins que tous soit fait sur l'écran), les boutons et les détecteurs éventuels.
Pour les I/O le Pizero a les mêmes que le RPI4 : raison de plus.

matiasilva
Posts: 16
Joined: Sun Jul 25, 2021 12:38 pm

Re: Projet de pachislot

Wed Jul 28, 2021 9:34 am

Ouais, tout a fait. Tres bonnes idees aussi.

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Wed Jul 28, 2021 9:51 am

totoharibo wrote:
Wed Jul 28, 2021 9:11 am
RPI4 avec Arduino ! je rêve !
Vu les problèmes de temps réel de l'application pas besoin d'une super-puissance de calcul.

Je fais tourner un site web sur un PIZERO avec plein d'images !
un chariot avec les moteurs pas à pas et des servos pour diriger une picam !

Le Pizero suffit largement pour faire un pachislot avec une vidéo HDMI.
OK avec le Pizero il faudra des adaptateurs pour le développement (HDMI et USB).
Quelle que soit la solution matérielle il faudra commander les moteurs (à moins que tous soit fait sur l'écran), les boutons et les détecteurs éventuels.
Pour les I/O le Pizero a les mêmes que le RPI4 : raison de plus.
le seul blème (pas besoin d'être sarcastique ), c'est que les RPi n'ont, selon OP, pas assez de pattes , indépendamment de leur numero (on peut toujours rajouter des expanseurs de bus, défiabilisant l'ensemble). La solution d'OP (un Arduino, qu'il maîtrise déjà + un RPi4, confortable pour mettre au point: une fois que ça marche -et ça marchera d'autant plus vite que ça aura été relativement confortable- passer d'un Pi4 à un Pizero est une copie de fichiers python) me semble suffisamment respectable pour que tous les rouleurs de mécanique ne viennent pas générer de confusion à grands renforts de points d'exclamation.
MAIS LES VRAIS HOMMES SORTENT GRANDIS EN BRANDISSANT LEUR SOLUTION...

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Wed Jul 28, 2021 10:31 am

"c'est que les RPi n'ont, selon OP, pas assez de pattes ."
on peut faire le décompte ?

Je suis un peu dans le flou.
C'est quand même la première étape avant de bâtir le projet ...

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Wed Jul 28, 2021 10:50 am

En fait il va y avoir pas mal de input et output à gérer entre les boutons, moteurs, leds, capteurs, donc je préfère me pencher sur un bon Arduino Mega pour gérer tout cela, et utiliser le Pi4 uniquement en reception d'ordres et lecture de vidéos sur écran.
"pas mal" est un bon chiffre pour démarrer un projet évolutif/ouvert (si on veut rajouter une verrue, on peut) et du fait des évolutions des prix et de la disponibilité des capteurs, peut être est ce LE BON CHIFFRE .

BTW: si tous les projets devaient être chiffrés, je serais obligé de me moquer de plein de cartes (dans certains PC) qui ont des emplacements vides -serigraphie, perforation, pistes- indiquant que le projet a été dimensionné généreusement -et fonctionne-

Avoir des bouts ur un Arduino Mega (que OP maîtrise partiellemnt) et d'autres sur RPi4 (mal maîtrisé) permet
a) d'epargner les GPIOs du RPI4 (on peut detruire une B4 avec ses GPIOs)
b) d'avoir vite des morceaux testés, le temps de se documenter sur python
c) de reflechir à des situations bizarres (que se passe-t-il si l'arduino veut lancer 5+ videos, sans se preoccupper si la precedente est finie?)
d) de migrer vers une solution moins coûteuse (en courant) si nécessaire... ou pas.

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Wed Jul 28, 2021 5:37 pm

un pachislot c'est un "truc" assez figé.

Il faut définir au moins le projet dans les grandes lignes avant de démarrer.

Un projet "à vue" sans avoir réfléchi avant c'est pour se faire plaisir.
Et en arrivant à la fin : "j'aurais du faire comme ça".

Au moins ça occupe ...

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Wed Jul 28, 2021 6:22 pm

Rajouter 3 ou 10 LEDs à une espèce de flipper parce que la première version est laide ne me semble pas difficile avec un arduino mega ... mais, avec un RPi ou un pico, ca mange entre 10 et 40 % des pattes... (sans compter les problèmes de compatibilité: l'arduino resiste mieux aux surintensités que le RPi)
il y a des tas de projects qui sont assez souples pour prendre en compte l'apparition de nouvelles données (capteurs, esthétique) en cours de route... Personne ne les accueille avec des sarcasmes ou de l'ironie même pas voilée.

Si OP veut apprendre le python (3), perfectionner son C++, la structure

* RPi pour la video et pour gérer le dialogue (c'est ça , la partie compliquée) en python
* ArduinoMega pour gerer des moteurs, des LEds (plein, flshies) et gerer le dialogue (c'est ça , la partie compliquée) en c++
et une liaison serie sur USB (soudée sur l'arduino mega; le Rpi peut la prendre en charge avec pyserial, IIRC) pour dialoguer

(j'ai fait des oscillos sur RPi, l'arduino ou tiva servant de mc3008/ADC de luxe et le Rpi affichant... Ca allait très vite à faire)

me semble idéale, respectant

a) les desirs de OP

b) son histoire et le materiel disponible (il a un ArduinoMega, il n'a pas le Zero de la mortkitue -parfois du vaporware- ni le Pico -qui est une merveille, j'en conviens, parmi d'autres merveilles (ESP32, nucleotides, gameboys) qui ne devraient pas servir à rouler des mécaniques -et dont l'apprentissage prend du temps-)

c) la possibilité d'evoluer vite, à moindre risque de casse.

kikirpg
Posts: 9
Joined: Mon Jul 26, 2021 10:14 am

Re: Projet de pachislot

Thu Jul 29, 2021 8:23 am

J'ai bien lu vos messages, même si je n'ai pas tout compris à chaque fois :lol: Merci pour vos réponses en tout cas.
Le projet parait flou pour le moment, il l'est encore oui, je n'ai pas encore défini le nombres de leds par exemples, le nombre de capteurs/switch qu'il me faudra en tout.
Pour le matériel, l'arduino Mega est commandé, je possède encore un pi3b+, donc je vais l'utiliser pour la partie affichage.
Le pi comme dit ne me servira que pour la partie affichage sur l'écran, il devra juste pouvoir recevoir une donnée, et envoyer une vidéo suivant la donnée reçue. Je sais que ça parait bête, vu le potentiel de la machine, mais pour le reste je préfère le faire sur l'Arduino, car j'ai déja un peu bricoler dessus :D
J'attends la reception de tout le matériel, et j'essaye de regarder un peu comment raspbian est fait, et comment créer un script dessus...
:)

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Thu Jul 29, 2021 2:23 pm

pour info :
ARDUINO : 13 I/O
RPi4 : 26 I/O

no comment.

kikirpg
Posts: 9
Joined: Mon Jul 26, 2021 10:14 am

Re: Projet de pachislot

Thu Jul 29, 2021 8:08 pm

Le Arduino mega, il est donné pour plus de 50 I/O, je n'utiliserais sans doute pas tout c'est sur, mais ça me laisse une marge de manoeuvre, pour rajouter certaines choses sur la fin.
Je me vois mal tout coder sur le Pi, vu que je ne maitrise absolument pas, si je peux juste déja gerer la partie vidéo, je serais utra-ravi ! 8-)

matiasilva
Posts: 16
Joined: Sun Jul 25, 2021 12:38 pm

Re: Projet de pachislot

Fri Jul 30, 2021 9:53 am

Comme le OP a deja le 3B+ et le Mega, pourquoi pas les utiliser? Le meilleur souvent est ce qui on a deja...

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Fri Jul 30, 2021 10:12 am

totoharibo wrote:
Thu Jul 29, 2021 2:23 pm
pour info :
ARDUINO : 13 I/O
RPi4 : 26 I/O

no comment.
Pour info:
çà fait 3 jours que OP écrivait, en bon français etsans ambiguité
donc je préfère me pencher sur un bon Arduino Mega
Pour info
çà ne fait pas de mal de se docum enter, avant de compter les pattes des uns et des autres '(surtout hors de propos)https://diyi0t.com/arduino-mega-tutorial/ permettra de compter, si vous êtes toujours disposé à aider, de façon -enfin- vaguement utile.

Pour info:
le support des arduini est fait depuis des années par des tutos en bon français
en particulier, les notions sur les 3 types de moteurs sont introduites clairement par le blog d' eskimon
https://eskimon.fr/subcategory/arduino/ ... ux-moteurs (ensuite, on peut aller approfondir sur wikipédia, poser des questions en ayant déjà des idées)
Le tutoriel de JMC sur les machines d'état est aussi assez limpide,
https://forum.arduino.cc/t/programmatio ... tat/452532
et permet d'éviter de bouffer du CPU en attente
edited ainsi que de comprendre l'exemple minimaliste 'logic : blink without delay' fourni avec l'IDE arduino.
Il est spécifique a arduino (les RPi, hors picod, sont naturellement en mulitâche)

L'arduino admet une alimentation exterieure : il suffit de regrder un lien au lieu de rouler des mécaniques, pour info-
(permet de faire face à une demande de courant trop élevée pour l'USB); les RPi ne peuvent pas nativement (plus un rique de griller une carte)
(la Jetson nano de nvidia le permet, mais est hors de prix).

Toujours pour info:

Arduino est parfois enseigné au lycée et au delà (ce qui peut poser problème avec les fora, qui peuvent être féroces avec les étudiants resquilleurs d'aide: spécifier que vous êtes un hobbyiste).
Avec les confinements, les étudiants se sont parfois rebattus, sur les conseils de leurs profs, vers un simulateur assez bien fait, tinkercad (mon neveu en a été content).

https://www.tinkercad.com/learn

Je vois deux avantages:

a)si on a besoin d'aide, et qu'on a bien decrit son montage , on peut tomber sur quelqu'un de compétent qui simulera (au lieu de cabler si on a une vocation ultra altruiste... ce qui est rare et au lieu de frimer comme une bête)

b) si on décide de simuler, tinkerpad a besoin (il est plus bête que les humains, du moins une majorité) de schémas précis -pas forcément complets: il supporte le UNO et la compatibilité UNO Mega est assurée par ailleurs) et de bouts de logiciel (compilables...) à debugguer... ça peut aussi servir si on veut faire evoluer un montage... c'est une affaire de goût.

Tiens, au fait, j'ai reussi à lier pas mal de problèmes qui peuvent se rencontrer à des endroits où une solution peut être trouvée.... (parce que, côté RPi français, ce n'est pas la gloire au vu des commentaires: le forum anglais de RPi est beaucoup moins condescendant avec les débutants, et dans le cas où ils sont sarcastiques, pour info, ils ont souvent de bonnes raisons)

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Fri Jul 30, 2021 3:13 pm

+1 : je ne vois pas l'utilité d'un post sur Arduino ici puisqu'il peut tout faire et qu'il y a toute la documentation nécessaire pour les débutants sue les sites Arduino.

Il est bien connu que le RPi est rempli de bugs et manque parfaitement de documentation.

Je continuerai à utiliser le RPi ... avec tous ses problèmes ...

dbrion06
Posts: 645
Joined: Tue May 28, 2019 11:57 am

Re: Projet de pachislot

Fri Jul 30, 2021 3:30 pm

+1 : je ne vois pas l'utilité d'un post sur Arduino ici puisqu'il peut tout faire et qu'il y a toute la documentation nécessaire pour les débutants sue les sites Arduino.
JE pense qu'il est plus sain d'approfondir des connaissances préexistantes dans le domaine de l'Arduino, avec des liens respectables,
que de se lancer dans des opérations hasardeuses (un moteur, selon les choix, peut necessiter 1 -, 2 -cas du continu, 4, 6 -cas des pas à pas: avec un UNO , un piZero, 1 ... 4 400, on peut gérer au maximum 6 moteurs pas à pas saccadés). Dans l'incertitude, on choisit en conséquence, par un compromis avec les connaissances du demandeur d'aide -pas d'un posteur aussi sot qu'irréfléchi - .

Autant dimensionner genereusement, sans sarcasme.

Il est bien connu que le RPi est rempli de bugs et manque parfaitement de documentation.
Il est bien connu aussi que totoharibo a contribué intelligemment à la doc du RPi...

Je continuerai à utiliser le RPi ... avec tous ses problèmes ...
Ah, et l'un des problèmes des utilisateurs français du RPi est leur condescendance vis à vis des débutants et leurs sarcasmes lourdingues quand on a osé reprendre leur fatras de bêtises.
C'est d'autant plus choquant quand on a affaire à un projet inetressant, et à un posteur qui connaît les grandes lignes de son projet (signaler qu'un simulateur populaire -et gratuit- peut amener à en structurer les détails, si besoin, est une vérité qui ne perd rien à être rappelée)

Il n'en est rien du forum en anglais (et les réponses sont d'une autre teneur....)
Par contre, je suppose que le demandeur d'aide n'est pas très interessé par l'avenir du RPi selon totoharibo (soit dit en passant, vous , totoharibo, feriez mieux
a) d'apprendre à lire
b) d e vous faire greffer un cerveau : votre sempiternel RPi en serait plus content)


Edité:

pour en revenir à l'interface RPi -indispensable pour la video à ce jour - arduino

J'utilise -pour des pico2040 ou arduini mega- avec satisfaction la bibliothèque pyserial, l'idée m'en est venue de :
https://balau82.wordpress.com/2011/03/2 ... nd-python/
(les etudiants en informatique savent être durablement interessants, et en tous cas postent beaucoup moins d'âneries que les commentateurs français du RPi)

Si -non testé- l'arduino mega envoie une demande d'affichage video au RPi, (ex: v25\n pour demander la video no 25)
si le Rpi n'est pas occupé à afficher une video precedente (on doit pouvoir connaître la durée de ces videos, non)
un accuse de reception (repeter l'ordre) suivi d'un appel système -qui est bloquant- est suffisant: ça doit faire au bas mot 6 lignes de python (rien à voir avec la gestion des LEDs, moteurs, et du temps qui peut être, que ce soit sur Arduino ou RPi, assez difficile)
c'est une structure où l'arduino est maître (impose sa cadence) au RPi (qui est esclave).

La difficulté du python ne me semble pas un facteur bloquant...


[moderator has banned user for insulting other users
banni pendant 7 jours pour avoir insulté d'autres utilisateurs]

kikirpg
Posts: 9
Joined: Mon Jul 26, 2021 10:14 am

Re: Projet de pachislot

Fri Jul 30, 2021 8:49 pm

Effectivement, ce dernier lien devrait grandement m'aider.
Merci beaucoups :D
Je commence à recevoir mon matériel, je vais bientôt pouvoir démarrer mes tests :D

totoharibo
Posts: 4578
Joined: Thu Jan 24, 2013 8:43 am

Re: Projet de pachislot

Sat Jul 31, 2021 8:24 am

@dbrion06
vous êtes tombé très bas : on se croirait dans un débat politique.

Pour info je fais du RPi depuis 2013 et ai travaillé toute ma vie dans des labos électronique (je ne met pas monCV :lol: )
OK je sors.

Return to “Français”