Virtual Pinball Cabinet, DMD, 3 monitors, DOF

De Wikijoan
Revisió de 22:36, 4 jul 2019; Joan (Discussió | contribucions)
(dif) ←Versió més antiga | Versió actual (dif) | Versió més nova→ (dif)
Dreceres ràpides: navegació, cerca

Contingut

Introducció

Després de fer vàries màquines amb backglass (i el DMD integrat en el backglass), és el moment de fer una màquina amb 3 monitors: playfield, backglass i DMD. A més, també vull implementar els solenoides (DOF). Aquesta màquina vindrà per defecte amb tirador manual i tilt (acceleròmetre).

Referències

En aquest projecte hi ha molta informació i discussió sobre els components utilitzats: pantalles, contactors, etc.

Referència per la geometria i l'abatidor:

Primeres proves

De moment faig una prova amb el Mini-PC (Barebone PC caixa AOpen, PCB Zotac GF9300/E5700. 2,5GHz + 2GB DDR2 + 160 GB bSATA + DVD), doncs la targeta gràfica Geforce 9300 té tres sortides de video (HDMI, VGA i DVA), però no podrà ser, aquesta targeta gràfica només suporta dues sortides simultànies.

Tinc 3 monitors:

Per


D'entrada el NVIDIA Control Panel només reconeix 2 monitors. Per tal de què reconegui el tercer he d'anar a :

NVIDIA Control Panel> Display > Set up multiple displays

i ara sí que puc activar el monitor ACER que d'entrada no el reconeix. Però no! Ja em diu que this GPU supports up to 2 displays. Per tant, hi ha tres sortides però només en suporta dues de simultànies.

Compra ordinador

Q6700.jpg

Aquesta gràfica té tres sortides (HDMI, VGA i DVA), a veure si amb aquesta gràfica i aquest ordinador puc configurar les tres pantalles. Doncs no, aquesta gràfica només soporta dues sortides al mateix temps. Per tant, n'hauré de buscar una altra.

La GT740 suporta tres monitors.

La meva placa no té sortida de video. Una altra possibilitat seria instal·lar una targeta més senzilla de video. Però crec que el millor és tenir una sola targeta i que suporti les tres sortides de video.

Al final compro i provo la NVidia GeForce GTX 750' oc 2GB, que sí que m'anirà bé.

Aclaracions sobre targetes Nvidia GeForce

Info novembre 2018:

Per tant, millor GTX que no pas GT.

GeForce GTX-RTX: es la nomenclatura que identifica a las tarjetas gráficas NVIDIA de consumo general. En la serie GeForce GTX-RTX se prioriza el rendimiento en juegos, de ahí su menor potencia en FP64, y no están optimizadas a nivel de software para trabajar con aplicaciones profesionales. Con las Quadro y Tesla ocurre todo lo contrario.

Generacions:

Gamma (alta/mitja/baixa):

Tened en cuenta que con esto nos referimos siempre a la gama que ocupa cada tarjeta gráfica en su generación correspondiente. Cuando se produce el lanzamiento de una nueva generación todas las tarjetas gráficas de la generación anterior bajan como mínimo un peldaño, lo que significa que los modelos que fueron gama alta pueden pasar a ser gama media, y los que fueron gama media pueden quedar como modelos de gama media-baja.

Elecció de monitors

Fins ara volia que per tema de disseny l'amplada del cos fos igual que l'amplada del backglass (pinballs de 3/4). Però en les màquines reals això no és així, el backglass és més ample.

Les dimensions dels monitors/TV les podem veure aquí:

Queda clar que el playfield serà una TV de 43, que són 53cm d'alt (per mi és ample per la configuració del pinball). Amb un monitor de backglass de 24 polzades, coincideix, però crec que el més correcte és instal·lar un backglass de 27 o 28, i el moble del backglass serà una mica més ample.

DMD 7/10 polzades

El DMD és una pantalla de 7 d'aquestes que van amb la controladora i que tenen entrada HDMI/VGA. El DMD no cobrirà la pantalla sencera, sinó que serà més petit. Després, amb una màscara negra pintada sobre el vidre/metacril·lat es veurà només la part que m'interessa.

El moble del backglass inclou necessàriament els altaveus a banda i banda del DMD. La fondària de l'amplada del moble del backglass que feia en les màquines de 3/4 era de 12cm. Ara, en les màquines grosses serà més, no perquè la màquina sigui més grossa, sinó que vull que el backglass sigui més generós. Per exemple, 18-20 cm de fondo.

El vidre no serà vidre, haurà de ser metacril·lat, doncs hauré de fer forat pels altaveus.

DMD: 7 inch LCD Screen Display Monitor for Raspberry Pi+Driver Board HDMI/VGA

Monitor 27 polzades

Dimensions

Dimensions big pinball.jpg

Les dimensions originals d'un pinball serien:

i les que jo proposo s'acosten bastant. Ho faré amb conglomerat cru de 19mm. Necessito dos taulells de 2440x1220. El cos està molt aprofitat. El backglass és millor utilitzar taulells reciclats.

DOF (DirectOutput Framework)

Per instal·lar el DOF (Direct Output Framework) segueixo aquesta guia:


El DOF necessita la versió 4.6 del .Net. Però per instal·lar aquesta versió necessito Windows7 SP1. Necessito el SP1 del Windows 7, que m'ha costat una mica de trobar perquè em confonia amb els fitxers que posa symbols (aquests no són). Al final tinc instal·lat el SP1 i el .NET 4.6, i ja funciona, i ho veig perquè en les opcions del backglass puc veure activada l'opció de Plugins.

Faré les proves amb la taula del Big Brave.

Continuo amb la guia, i per generar el fitxer de configuració que necessita DOF, fem servir la següent eina online:

Em registro: joanqc@gmail.com / jq********

Necessito un controlador que faci d'interfície entre el VP9 (la versió que estic utilitzant) i els solenoides. Controlador DOF. Compro aquest:

Hi ha vàries opcions de controladors, però per començar amb 8 ports en tindré prou (té 8 relés). Té l'avantatge que es pot veure que funciona doncs els relés s'obren i es tanquen, i no cal tenir els solenoides,

De moment fico aquesta configuració:

port 1 - 8 bumper left
port 2 - 8 bumper center
port 3 - 8 bumper right
port 4 - 8 bumper back
port 5 - flipper left
port 6 - slingshot left
port 7 - slingshot right
port 8 - flipper right

NOTA: recordar que el plunger no porta associat cap solenoide (és una molla), i ja té el seu propi so natural. Ara bé, un kicker sí que deu tenir associat un solenoide. Però de moment amb la configuració de 8 solenoides no me'n sobren.

Es genera el fitxer directoutputconfig.zip, que he de descomprimir a C:\DirectOutput. Conté els següents fitxers:

directoutputconfig40.ini:

...
BigBrave,E101,E102/E108/E109,E103,E104,0,0,0,0
...

veig que de les possibles 8 assignacions se n'assignen 4, que si són els 4 primers, vol dir que són els flippers i els slingshots (i els bumpers no tindrien assignació?) Comprovar, TBD

Continuo amb la guia i només falta disposar del controlador DFO per acabar d'entendre com funciona la configuració.

Jo utilitzo el VP9, i això vol dir que les taules i l'emulador no estan tan ben pensades per a DFO. Per defecte tindré tant el so digital com el so i efectes que produeixi els solenoides. Si vull desactivar el so, a VP9 he d'anar taula per taula i comentar la producció de so, com es comenta en la guia. En el VP10 i VPX es pot fer de manera més global. Ara bé, no es poden desactivar tots els sons quan només tinc 8 solenoides.

Videos de referència:

Virtual pinball cabinet running 12v solenoids (aquest utilitza una configuració molt similar al que jo faria):

Dubtes en el fòrum que m'afecten:

L'explicació de tots els fitxers de configuració:

Sainsmart boards are not autodetected, you need a global config and a cabinet config file. The docu explains how to create those files. There are even samples for the requirted xml structures.

The zero config approach only works for a limited range of controllers which are autodetected (Ledwiz, Pacled, Pacdrive).

You dont have to care about table config xml files. These are just a alternative way to configure the effects for tables. The information in the ini files takes care of those configs.

To summarize, for the sainsmart, this is what I had to do:

For all my DOF config files, I chose to put it in the 'config' directory under the c:\DirectOutput directory as opposed to in the same folder as b2s server dll location.
I started a table and made sure the plugins checkbox was active in the backglass B2S screen.  I then clicked into detail on the plugin to make sure there were no errors.  Originally there was an error because I hadn't created a C:\DirectOutput\config directory.
You must have a Cabinet.xml and that Cabinet.xml must have the serial number of the sainsmart usb relay.  I downloaded a sample Cabinet.xml that someone else created for their sainsmart.  I just edited it with the serial number.  The Cabinet.xml goes in the c:\DirectOutput\config directory.
I used the DOF Config Tool, picked 'Sainsmart 1 - directoutputconfigini40' as the device.  Since the sainsmart only has 8 ports and I have solenoids on all 8, my port mappings were as follows.  (This will be different for you depending on which toys you connect to which ports)
port 1 - 8 bumper left
port 2 - 8 bumper center
port 3 - 8 bumper right
port 4 - 8 bumper back
port 5 - flipper right
port 6 - slingshot right
port 7 - slingshot left
port 8 - flipper 8
I saved and generated the config files.  I put both generated config files in the C:\DirectOutput\config directory
GlobalConfig_B2SServer.xml - For me I had to use this name as opposed to the name on the DirectOutput site.  The name mentioned there says 'GlobalConfiguration_B2SServer.xml'.  I also downloaded this file from the same person that provided the Cabinet.xml
I think that's it.

This is my GlobalConfig_B2SServer.xml content:

<?xml version="1.0" encoding="UTF-8"?>
<!--Global configuration for the DirectOutput framework.-->
<!--Saved by DirectOutput Version 0.6.5240.37622: 2014-05-24 19-41-50-->
-<GlobalConfig>
<LedControlMinimumEffectDurationMs>60</LedControlMinimumEffectDurationMs>
<LedControlMinimumRGBEffectDurationMs>120</LedControlMinimumRGBEffectDurationMs>
<IniFilesPath>C:\DirectOutput\config</IniFilesPath>
<CabinetConfigFilePattern>C:\DirectOutput\config\Cabinet.xml</CabinetConfigFilePattern>
<TableConfigFilePatterns/>
-<LedControlIniFiles>
-<LedControlIniFile>
<Filename>C:\DirectOutput\config\directoutputconfig40.ini</Filename>
<LedWizNumber>40</LedWizNumber>
</LedControlIniFile>
</LedControlIniFiles>
<EnableLogging>false</EnableLogging>
<ClearLogOnSessionStart>false</ClearLogOnSessionStart>
<LogFilePattern>.\DirectOutput.log</LogFilePattern>
</GlobalConfig>

Controladora DOF

eBay:

SainSmart 12V 8 Channel USB Relay Module Opto-couple For Arduino Robotics (17,78 EUR)

D'una banda hi ha el cable USB que es connecta a l'ordinador, que són 5V i representa la lògica del programa. Després hi ha els 12V que accionaran els relés, i ho agafo de la font d'alimentació de l'ordinador. Finalment els relés obren el pas a energitzar els solenoides que funcionaran a 24V i representa el circuit de potència. És a dir, que amb la lògica de l'ordinador puc controlar el circuit de potència.

Power supply

Està clar que l'alimentació dels contactors, relés, motors, leds,... ha de ser independent de l'ordinador. Una font d'alimentació ATX d'ordinador no és prou potent. S'ha de decidir si tindré dispositius a 24V, o per contra, em vull quedar limitat a 12V. Per fer el primer prototipus em quedaré a 12V. Però per tal de què els contactors siguin potents, han de tenir 30-40A, i això vol dir que la font d'alimentació estarà en l'ordre de 300-500 W.

Cercar a eBay 12V switching supply i tinc les típiques fonts platejades. Per exemple, una font 12V 40A 480W val 30-50e. Compro aquesta font (32e):

relés, contactors

Per exemple, aquests són els tipus de relés que podria necessitar:

Per fer la prova compro aquests:

que són 6e, i hi ha dues unitats.

Números de solenoides: com que em decanto pel SainSmart mde 8 relés, escullo la configuració de 8 solenoides, que inclou Left i Right flipper, Left i Right slingshot, i els bumpers Left, Right, Back i Center, tal com es veu en aquest enllaç:

També hi hauria la configuració de 10 solenoides.

Pressupost


creat per Joan Quintana Compte, setembre 2018, maig 2019

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
Institut Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines