Podiam ao menos ter mandado o link para a App ou uns scripts... o Conchas com um iPad já com a App e eu com um SBrick e um Android e um PC sem nada... vou ter de chateá-los.
Re: SmartBrick
Enviado: 20 out 2014, 15:11
por CyberX
«We will contact you soon with the details. »
Argh!
Bom, até lá, o que se pode sacar do SBrick é a parte que diz respeito às normas do consórcio Bluetooth:
O SBrick expõe 6 serviços: Generic Access, Device Information e mais 4 específicos do fabricante. Os 2 primeiros expõem esta informação:
Device Name = SBrick
Appearance = Generic Remote Control
Model Number = 4.0
Firmware Revision = 4.1
Hardware Revision = 4.0
Software Revision = 4.1
Manufacturer Name String = Vengit Ltd.
Os outros 4 serviços permanem uma incógnita mas expõem ao todo 8 campos:
- 5 Read Only
- 1 Write Only
- 1 Read/Write
- 1 Unknown
Accionar um motor será uma questão de escrever determinados valores nalguns destes campos (por exemplo o Duty Cycle e o sentido de rotação).
Agora enquanto os magiares não me dizem mais nada e o pimpolho dorme vou finalmente ver o que vem nos sacos da Brick Race.
Re: SmartBrick
Enviado: 20 out 2014, 21:04
por AVCampos
Uau, timing excelente.
Parece-me que farás um bom aproveitamento do SBrick! E as melhoras para o assistente da robótica.
Re: SmartBrick
Enviado: 21 out 2014, 13:12
por Conchas
Pois cá os meus não chegaram a tempo da BRInCKa, e eu com uma Ultimate 8043 mais a 8275 lá paradinhas e preparadas à espera...
Ainda fiquei na expectativa que pudesse chaegar a Braga (a morada que dei) na Segunda de manhã.
Na segunda já depois do meio-dia e ainda antes de saír de Braga, liguei ao Jorge e nada.
Já à tardinha quando passava por Leiria ou coisa do género, liga-me o Jorge a dizer que tinha chegado...
Bom, a próxima oportunidade de lhes colocar as mãos em cima será no próximo Sábado se tudo correr conforme planeado.
Resumidamente, neste momento não tenho nem Sbricks, nem App que ficou num iPad Air emprestado em Braga.
Re: SmartBrick
Enviado: 21 out 2014, 13:26
por CyberX
Pois eu continuo na fase do «We will contact you soon with the details» apesar de já ter tentado contactar o Tamás que parece ser quem percebe da electrónica e do firmware, Voou aguardar mais um bocado mas apetece-me puxar dos galões por ter pago o pledge de beta tester.
Continuo com o mais novo de molho e para a semana vou estar fora do país por isso não vou poder ir ao Corte Inglês de Lisboa nem sequer para apoio moral... seria uma boa altura para experimentá-los.
Re: SmartBrick
Enviado: 21 out 2014, 13:35
por Conchas
Não seria boa altura porque eu não tenho a aplicação.
Terá de se gerar um novo profile para um device de resolução diferente (desta vez um iPhone 5) e receber o convite através do TestFlight para instalar a aplicação Beta no iPhone...
Re: SmartBrick
Enviado: 21 out 2014, 23:56
por CyberX
Boas notícias: o Tamás publicou o suficiente na area de Beta Testers para me desenrascar (e só mesmo o suficiente, em texto corrido, vi-me húngaro)
Ainda não tive tempo de testar com o EV3 mas tb não interessa, no Ubuntu funciona, já consigo ligar e desligar um motor a partir de uma tool de linha de comando para bluetooth, a gatttool:
sendo "00:07:80:7F:28:E1" o endereço BT do meu SBrick, lança-se a tool para conectar-se-lhe em modo iteractivo:
$ gatttool -b 00:07:80:7F:28:E1 -I
Depois lá dentro estabelecemos ligação:
connect
para accionar o motor no canal 0 com Duty Cycle de 100% mandamos o comando DRIVE CANAL CLOCKWISE 100%
char-write-cmd 0x0025 010000FF
para accionar no sentido inverso DRIVE CANAL ANTICLOCKWISE 100%
char-write-cmd 0x0025 010001FF
para travar o motor BREAK CANAL
char-write-cmd 0x0025 0000
para desligar o motor ainda não sei qual o comando (BREAK trava-o activamente mas deve haver um STOP ou parecido).
Do Android tb já consigo com uma ferramenta da Nordic Semiconductor's chamada nRF Master Controller (e assim já fiquei a saber qual é o chipset utilizado no bicho). Não é muito mais prática que os comandos acima mas provam que funciona.
Assim que encontrar o caixote onde está o meu EV3 mostro-vos um videozito de prova de conceito.
Re: SmartBrick
Enviado: 22 out 2014, 13:06
por CyberX
Estreia mundial: Mindstorms EV3 + SBrick + Power Functions
As boas notícias: o controlo é simples a partir da linha de comando por isso não deve ser difícil meter isto num programa
As más notícias: devo ter um canal avariado. Este protótipo encaixa mal em LEGO e muitas vezes tenho de mexer nos conectores PF para conseguir que os motores rodem. Mas por mais que mexa o canal #1 não vai lá.
No video, um motor PF L ligado ao canal #0 a rodar clockwise com um Duty Cycle de 22% e um motor PF M ligado ao canal #2 a rodar anticlockwise com um DT de 17%
Tal como esperado, é a mesmissima coisa que no meu portátil Ubuntu (tirando ter de especificar que é para usar o device Bluetooth hci0 porque o EV3 tem já um interno, hci1). Da linha de comando do ev3dev:
gatttool -b 00:07:80:7F:28:E1 -I -i hci0
O primeiro envia o comando DRIVE (01) ao canal #0 (00) no sentido clockwise (00) com o DT 22% (38h = 56d numa escala de 0 a 255 pelo que 56/255=22%)
O segundo envia o comando DRIVE (01) ao canal #2 (02) no sentido anticlockwise (01) com o DT 17% (2Bh = 43d, 43/255=17%)
Servo Motor com SBrick
Enviado: 24 out 2014, 18:38
por CyberX
Primeiras incursões em python: um motor EV3 a servir de referência remota a um Servo PF
Re: SmartBrick
Enviado: 24 out 2014, 18:42
por Conchas
Há aí um certo fator multiplicativo, mas de qq das formas é excelente trabalho e achievement!
Re: SmartBrick
Enviado: 24 out 2014, 22:08
por CyberX
Há aí um certo fator multiplicativo
Há falta dele sim senhor!
Estou a ler o motor no ev3dev e a trasnferir o valor directamente para o SBrick, só retiro o sinal.
Assim, se o ev3dev ler 10 envio 10 no sentido do relógio ao SBrick o que dá 10/255 % da posição máxima nesse sentido;
e se o ev3dev ler -10 envio 10 no sentido contrário ao SBrick, idem.
A documentação diz que estou a ler "the current position of the motor in pulses of the rotary encoder". Se 1 pulso for 1 grau, teria de fazer corresponder 90º ao valor máximo no SBrick (255).
Além disso intercalo cada leitura com 1 pausa de 1 segundo, é demasiado. Mas é o que se consegue nos poucos períodos mortos de uma tarde de trabalho muito confusa.
Re: SmartBrick
Enviado: 25 out 2014, 01:55
por CyberX
Implementados factor de escala de 255/90 e limitação ao intervalo [-90º,+90º]