Pois sem demérito para o trabalho do Conchas, eu estou como o Marco, acho que se fazia a coisa sem computação distribuída (provavelemente à custa do bom e velho método da força bruta).
De qualquer maneira alinho nisto porque:
- computação distribuída interessa-me, sobretudo em ambientes hibridos (PC, Arduino, Raspberry Pi, EV3, Android todos ao barulho)
- se não for assim nem o pai morre nem a gente almoça, estou farto de slavefests a separar plates 2x2, só mesmo por amor à camisola
Ainda a ver umas coisas de RMI mas é um protocolo próprio do Java (e por isso não possível para Android, raios partam as disputas da Oracle com a Google) e apesar de haver tentativas não há nada fora do Java que consiga falar RMI directamente.
Mas há sempre uma alternativa. No caso do ev3dev
a malta está a apostar no RPyC(or Remote Python Call, is a transparent python library for symmetrical remote procedure calls, clustering and distributed-computing)
Quando tiver tempo meto-me nisso - no meu PC posso invocar recursos do ev3dev pelo que de um ev3dev para outro também.
Um exemplo simples para usar um motor na porta A de um EV3 por TCP/IP e usar as libraries ev3dev que estão no EV3 (ou seja sem usar libraries localmente):
Código: Selecionar todos
import rpyc
conn = rpyc.classic.connect('ev3dev') # host name or IP address of the EV3
ev3 = conn.modules['ev3dev.ev3'] # import ev3dev.ev3 remotely
m = ev3.LargeMotor('outA')
m.run_timed(time_sp=1000, speed_sp=600)
O Conchas não gosta de ev3dev tanto ou mais que eu de Java mas isto fazia-lhe o mesmo que o LeJOS com RMI.
Sou tipo para pedir-vos para levarem todos os vossos EV3 para São João da Madeira e tentar uma orquestração de EV3 por Wi-Fi.
ideias, ideias...!