Arxiu de la categoria: Joan Quintana

Encuentros en la Tercera Fase, tema del Pocket pinball

He volgut fer el tema del pinball el més similar possible a l’orginal de Gottlieb, sense obsessionar-me. Per fer-ho he pintat una base de groc en el moble, i amb la CNC unes quantes plantilles per sobreposar els colors blau i blanc. El resultat m’ha agradat bastant, encara que tinc marge de millora. Però crec que el propòsit estigui força aconseguit.

Per tal de què la màquina sigui realment un Close Encounters, vull suprimir la pantalla blava de presentació del Windows, i que quan arrenqui el PinballX obri directament aquesta taula.

Pocket Virtual Pinball: ja falta poc

Després de construir el Jacks Open Mini Pinball, em van quedar ganes de construir la versió més mínima possible d’un pinball. Bàsicament un model de moble que pugui transportar fàcilment i ficar-lo dins el cotxe. Aquest model l’anomenaré Pocket Pinball, i ja he decidit que estarà basat en el tema de Encuentros en la Tercera Fase (Close Encounters of the Third Kink), la pel·lícula del Steven Spielberg que recordo haver vist quan tenia 7 o 8 anys. O sigui que aquesta petita gran màquina l’anomenaré Close Encounters Pocket Pinball

El primer va ser elegir l’ordinador, que havia de ser un barebone. Vaig aconseguir per 75 euros un Barebone AOpen, PCB Zotac GF9300/E5700. 2,5GHz + 2GB DDR2 + 160 GB bSATA + DVD. Ja sé que aquest ordinador no és molt potent, però volia veure si era capaç de moure les taules del Visual Pinball, que és l’emulador que faig servir. La conclusió és que mou bé les taules antigues en general, i es queda curt amb les taules que tenen DMD. Això es nota sobre tot en el moviment del flipper, que no és fluiïd i es pot arribar a encallar.

La sortida de video de la placa ITX té sortides HDMI, DVI i VGA, però només se’n poden fer servir dues a l’hora. Els 2 monitors que he elegit per fer la màquina són:

  • Pantalla principal (playfield): ACER AL1603W monitor TFT 15,5. (VGA) 1366×768. Format 16:9
  • pantalla secundària (backglass). És la pantalla reciclada d’un IPad 10. Model 32V3H-H6A. HDMI. 1280×720 (nadiu)· Vaig comprar el controlador per eBay (25 euros). Va ser difícil extreure la pantalla del IPad, però al final ho vaig aconseguir sense trencar la pantalla 🙂

Les mides de la màquina són 50 cm de llarg x 35cm ample x ? cm d’alt (comprovar), i realment ha sigut difícil ficar tots els components a dins: placa base, font d’alimentació, disc dur, amplificador audio, altaveus, transformador TV, controladora TV, mòdul IPAC, botons i cablejat vari.

Per acabar la màquina em basaré en les arts originals de la màquina de Gottlieb(https://www.pinrescue.com/games/images/closeencounters/DSCF1958.JPG). Haurem de fer les plantilles per fer les màscares de colors groc, blanc i blau. Encara que aquesta màquina es pot posar directament sobre la taula, crec que és una bona idea posar-hi unes potes per mantenir la idea i proporcions de la màquina original.

Referències:

Projecte CNC: script per a un joc de taula Abalone

Abalone Bord Game and hexagonal gridL’Abalone és un joc de taula dissenyat per Michel Lalet i Laurent Lévi el 1987. És un taulell amb forats on col.loquem 14 caniques per bàndol, i es tracta de fer fora sis caniques del contrincant. De fet, mai hi he jugat, però de moment construirem un taulell.

El problema consisteix bàsicament en fer una xarxa en format rusc d’abelles, que de fet són hexàgons i triangles equilàters. Per disposar els punts sobre un programa de CAD (jo utilitzo LibreCAD), de seguida necessitem el cos(60) i el sin(60). Partint d’una graella ortogonal no és fàcil fer aquesta graella. El millor és crear un script i generar els punts de forma automàtica.

Partim d’un fitxer buit de LibreCAD, creem la capa punts, i fico tres punts de prova. Obrim amb un editor de text (els fitxers de CAD tenen un format de text pla) i localitzem els punts de referència. Ara ja sabem el format que ha de tenir els punts que volem generar programàticament.

Mostrem el tros de codi més representatiu que genera la geometria de la meva graella, script bee_grid.cpp:

...
\tfor (j=0; j
El script genera un fitxer de text amb les línies que podem inserir en el nostre fitxer original, i el resultat el podem veure a la foto. És una graella de punts per al joc de l'Abalone. L'altra foto, la del joc de l'Abalone, no és meva (l'he trobat per Internet), però aquest és el meu objectiu: construir un taulell d'Abalone. Per fer-ho ja tinc el fitxer de CAD, després hauré de generar el G-Code, i finalment fresar tots els punts sobre una fusta. Ja ensenyaré el resultat quan ho hagi acabat.

Enllaços:

update 21/06/2018: aquest és el resultat final. He aprofitat una fusta de cuina, que estava molt marcada, però el resultat final m'agrada.

Jacks Open Mini Pinball

Jacks Open Mini Pinball

Jacks Open Mini Pinball

Finalment ja hem acabat el Mini Virtual Pinball que he estat construint i configurant els darrers mesos (juntament amb altres projectes que he hagut d’anar empenyent en paral.lel). El pinball està basat en el el Jacks Open de Gottlieb de l’any 1977.

El treball de pintura és molt millorable, tot i que la idea d’utilitzar màscares i spray m’ha agradat molt, i si perfecciono la tècnica, es poden fer coses molt xul·les.

He ficat 200 taules de diferents fabricants i diferents èpoques. A mi particularment m’agraden més les taules senzilles i electromecàniques dels anys 60 i 70, que no pas la sofisticació plena de llums i sons de les taules d’estat sòlid.

Per a la següent màquina que hagi de construir hi ha bastantes coses a millorar. Estaria bé que les potes es puguin treure, i que el backglass es pugui plegar cap endavant. En aquesta ocasió no ho he fet per falta de temps, i ara em trobo que tinc un moble que no el puc ficar dins dels cotxe. També hauria d’afegir un plunger/tirador analògic, i implementar el tilt/nudge analògic amb un acceleròmetre i arduino.

Ja tinc un nou pinball a la vista. Com que aquest no el puc transportar en cotxe, m’agradaria fer una versió mínima de pinball a dues pantalles (B2S), basat en una placa d’ordinador Mini-ITX (tipus barebone). És el que s’anomena un pocket pinball. Començaré a recopilar el material, ja explicaré com sempre els avenços.

Presento dos videos d’aquesta màquina. El primer és un video de presentació; i el segon és un video del procés de construcció. En els videos he ficat les cançons d’un grup de música que estan triomfant molt entre els sagals: els Buhos, música canyera en català.

Pinball B2S, ja falta poc

Per fer la primera màquina B2S (2 pantalles: el playfield i el backglass) he escollit el tema del pinball Jacks Open de Gottlieb (1977). L’original és un pinball electro-mecànic, i provant-lo amb el Visual Pinball m’ha agradat especialment. De fet, m’agraden força tots els pinballs d’aquesta època, sense massa floritures.

M’he decantat pel disseny del Jacks Open perquè no és un disseny massa difícil i vull provar, més que imprimir vinils, fer un treball de pintura i pintant amb spray les màscares per fer la transferència del disseny. Com es pot apreciar, només s’utilitza els colors vermell i negre (a part del blanc de fons). He reproduït els diferents motius del dibuix en el Inkscape, i he utilitzat una talladora de vinils (la Silhouette Cameo) que tenien sense utilitzar en el MOB de Barcelona. És la primera vegada que utilitzava aquesta màquina, i amb més temps i paciència hauria aconseguit un millor resultat. Per ser la primera vegada que faig un treball de pintura amb màscara estic content, però hi ha bastantes coses que puc millorar, i de fet hauré de repassar amb pinzell alguns acabats.

Ja he avançat bastant amb la màquina, i espero poder acabar-la i disfrutar-la ara el mes de juny. Finalment el plunger analògic, i l’acceleròmetre per detectar el tilt, hauran d’esperar. El backglass i les potes són fixes, i això vol dir que difícilment podré ficar aquesta màquina en el cotxe. Són aspectes que hauré de millorar de cara a una segona màquina.

Enllaços:

El punt volat per fer la ela geminada en català: pràctica de SQL al WordPress

En l’escriptura en català s’utilitza freqüentment la ela geminada amb la grafia l.l (per exemple, Brussel.les), en comptes d’utilitzar el punt volat: Brussel·les.

Anem a actualitzar un bloc de WordPress (www.joanillo.org) substituïnt a la base de dades, amb SQL, totes les eles geminades amb la grafia del punt volat. Procés:

1. els posts que estan publicats

select ID,post_title,post_status from ins_posts where post_status=’publish’;

2. els posts que estan publicats, mostrem també el contingut

select ID,post_title,post_status, post_content from ins_posts where post_status=’publish’;

3. I ara mostrem els posts que tenen ela geminada:

select ID,post_title,post_status, post_content from ins_posts where post_status=’publish’ and post_content like ‘%l.l%’;

4. I ara que ja veiem quins són els posts afectats, podem modificar el seu contingut substituint les eles geminades mal formatades per un punt volat:

Primer de tot fem una prova de com quedaria la substitució:

select ID,post_title,post_status, replace(post_content,’l.l’,’l·l’) from ins_posts where post_status=’publish’ and post_content like ‘%l.l%’;

5. I ara ja podem fer la substitució (update):

update ins_posts set post_content=replace(post_content,’l.l’,’l·l’) where post_status=’publish’ and post_content like ‘%l.l%’;
Query OK, 49 rows affected (0,07 sec)
Rows matched: 49 Changed: 49 Warnings: 0

NOTA: També funciona, i potser és millor:

update ins_posts set post_content=replace(post_content,’l.l’,’& middledot ;’) where post_status=’publish’ and post_content like ‘%l.l%’;

Aquest és un petit exemple de com podem fer canvis directament en la base de dades, si coneixem les taules i la relació que hi ha entre elles.

Enllaços:

Pistons pneumàtics i vàlvules per al whack-a-mole

He fet les primeres proves per la part pneumàtica del whack-a-mole. A vegades comprar a Aliexpress és realment complicat. Volia uns pistons pneumàtics d’una sola acció amb retorn de molla, i he rebut uns pistons de doble acció. El títol del producte i les fotos del producte no concordaven. Crec que al final aquests pistons de doble acció m’aniran bé, tot i que al final necessitaré el doble de solenoides (2 solenoides per pistó, tal com es veu en el video).

El compressor que utilitzo és el més senzill que he trobat. M’ha costat 10e de segona mà, i és bastant sorollós, però faré un bon amortiment del so. Un compressor de més potència i amb calderí seria ideal, però el preu s’incrementaria molt.

Així doncs, el material que es necessita per fer aquesta prova és: compressor, pistó pneumàtic, dos solenoides (vàlvules pneumàtiques), 2 ràcors per als pistons, 4 ràcors per als solenoides, una T, i tubo de 6mm. El següent pas serà la part electrònica: un arduino i els relés per controlar tots els solenoides.

Enllaços:

Recreativa whack-a-mole: introducció

La nova recreativa que farem és un whack-a-mole (tot i que encara tinc d’altres projectes per acabar…). És un projecte de pneumàtica, i tenia ganes de fer-ne un, tot i que treballar amb aire comprimit, pistons i solenoides és sensiblement més car que treballar només amb electrònica.

I què és un whack-a-mole? És un joc arcade, que ve dels Estats Units però aquí també es pot veure a les fires, en què uns talps surten dels forats de la taula, i s’han de colpejar amb una massa per tal de què es tornin a amagar. Com més talps, més punts. El joc es complica perquè surten varis talps alhora i la velocitat es va incrementant.

D’aquí ve l’expressió anglesa This is like playing whack-a-mole. Precisament to whack vol dir colpejar, i mole és un talp. I l’expressió descriu la situació on et sorgeixen de cop i volta moltes coses a les quals has de fer cas, i a mida que les vas fent et sorgeixen més coses, i no dones abast. Igual que en el joc, que has d’anar donant cops de massa intentant donar cops de massa als talps. A Espanya es va traduir per guacamole, que sona igual però que no té res a veure amb el sentit original del mot. Per exemple el joc de guacamole de la marca MB (veure video de la publicitat).

Així doncs, he començat a reunir el material: pistons, vàlvules pneumàtiques, compressor barato, ràcors, tubs, arduino, i una tira de NeoPixels per fer el display, que potser això serà allò més interessant doncs vull dos displays de tres dígits ben grossos i ben xul·los.

Aquest ha de ser un projecte diferent i divertit.lo. El que és una incògnita és si el pressupost final compensarà tot plegat.

Enllaços:

Llibre d’equacions diferencials. Capítol “Equació de la corda pesant: la catenària”

Recordo en els meus dies de la facultat que vam resoldre a la pissarra l’equació de la corda pesant. És un cas típic d’anàlisi infinitessimal, amb solució analítica: la corba catenària. L’equació va ser obtinguda per primera vegada per Leibniz, Huygens i Johann Bernoulli el 1691.

M’ho he passat molt bé escribint aquest article. M’ha servit per aprofundir en LaTeX, i en la llibreria Matplotlib per fer les gràfiques amb Python.

Com es comenta a l’article, un cas pràctic molt divertit podria ser la construcció d’una bicicleta de rodes quadrades que circulés sobre una superfície feta a base de corbes catenàries. La idea seria pròpia del Cirque du Soleil, segur que triomfaria!

Pots descarregar aquest capítol en el següent enllaç:

Pinball B2S, distribució dels components

Estic avançant en el projecte del Pinball B2S, tot i que se m’ha girat feina amb un parell de màquines que estic fent. Estic a punt de pintar de blanc el moble, i abans de pintar he d’acabar de fer algun forat. Però per fer els forats que em falten, he de disposar ja tots els components en la seva posició final.

Així que he agafat l’ordinador sobre el que he estat fent les proves, i l’he desmuntat del tot. És llàstima perquè és un ordinador que vaig aconseguir fa un parell de mesos per un bon preu i que té una caixa molt insonoritzada i una font d’alimentació molt bona. Com es veu en la foto, a part del ventilador de la font d’alimentació, té tres ventiladors més i un dissipador de la CPU molt gran. És una bona màquina amb una placa ASUS P5Q-E i un Intel Core 2 Quad Q9550 a 2.83GHz. Té 4GB de RAM, en alguna taula que he jugat crec que seria millor tenir 8GB de RAM, però de moment ho deixaré així. Vaig agafar aquest ordinador perquè portava la gràfica NVidia GeForce 240, que encara que no és molt potent ja l’havia provat en una altra màquina amb molt bon resultat.

Així doncs he desmuntat la placa, la font, la gràfica, el disc dur, un connector USB, tots els cables, … i ho he disposat tot sobre la base del pinball. Al principi volia fer un calaix per la part de darrere de manera que es pugués accedir a tots els components de l’ordinador sense haver de desmuntar la pantalla. Però com es veu, al darrera disposaré de la font d’alimentació i tres ventiladors. Espero no haver d’accedir mai a l’ordinador, però si fos el cas, el que s’haurà de fer és treure el vidre i la pantalla del playfield, tampoc serà tanta feina.

En la foto no estan tots els components. Falta un IPAC, tots els botons i cables, i tota l’electrònica de la TV. Però no és problema, veig que tinc lloc suficient, i a més algun component no cal que estigui en la base, sinó que es pot fixar en el lateral.

Tenia ganes de fer el plunger analògic, però de moment prefereixo acabar la màquina i més endavant ja miraré de ficar-lo. Ara veig que hagués pogut fer l’altura del moble 2 o 3 cm menys alt, però tant se val, el que importa és que les proporcions entre la pantalla del backglass, el moble principal, i les potes, sigui la correcta. De fet, em quedarà un pinball petitó: és un mini virtual pinball. Tenia ganes de fer-ne un de petitó abans de ficar-me en un pinball de dimensions reals. Com que no es podrà jugar dret, suposo que el millor serà jugar-lo assegut des d’una cadira. Ja veurem.

El projecte a la wiki: