Atividade #524
FechadaMeta #523: Ter novas placas mãe para RoboCup 2018
Fazer diagrama de blocos da nova placa mãe
Descrição
Colocar todos os possíveis periféricos no diagrama, para depois serem escolhidos os que serão usados no projeto.
Arquivos
Atualizado por Onias Castelo Branco há quase 7 anos
- Arquivo esboço-digrama de blocos.png esboço-digrama de blocos.png adicionado
material de referência:
https://www.tigers-mannheim.de/download/release2015/TDP_2015_Tigers_Mannheim.pdf
https://www.tigers-mannheim.de/download/release2014/TDP_2014_Tigers_Mannheim.pdf
giroscopio/acelerometro que a tigers usa: mpu 6000: https://www.mouser.com/ds/2/400/MPU-6000-Datasheet1-1112286.pdf pode se comunicar por SPI ou I2C.
Cartão SD se comunica por SPI http://www.dejazzer.com/ee379/lecture_notes/lec12_sd_card.pdf
Atualizado por Onias Castelo Branco há quase 7 anos
Luiz Renault Leite Rodrigues escreveu:
O que é MSMF?
é o fusivel resetável. link dele na nossa wiki: http://redmine.roboime.com.br/projects/eletronica/wiki/MSMF
Atualizado por Onias Castelo Branco há quase 7 anos
datasheet da nova possivel placa a ser usada stm32f411
3 interfaces de comunicação i2c, 3 de spi e 3 USART.
Atualizado por Onias Castelo Branco há quase 7 anos
Onias Castelo Branco escreveu:
datasheet da nova possivel placa a ser usada stm32f411
3 interfaces de comunicação i2c, 3 de spi e 3 USART.
pelo diagrama q eu coloquei, da pra por todos os itens q eu sugeri. Se baseando na contagem de portas i2c e spi. não sei se a falta do timer 8 vai ser tão significante a ponto de limitar a implementação de algum desses
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
Refazer o diagrama de blocos posicionando os blocos fisicamente no espaço da placa.
Utilizar ferramenta gráfica para ligação entre os blocos que dê aparência profissional ao diagrama.
Substituir o fusível resetável por um eFuse.
Qual a aplicação do cartão SD?
Onde está o conector de expansão para ligar por exemplo o módulo de visão embarcado? Colocar um conector com SPI e I2C e alimentação.
Atualizado por Onias Castelo Branco há quase 7 anos
Luiz Renault Leite Rodrigues escreveu:
Refazer o diagrama de blocos posicionando os blocos fisicamente no espaço da placa.
Utilizar ferramenta gráfica para ligação entre os blocos que dê aparência profissional ao diagrama.Substituir o fusível resetável por um eFuse.
Qual a aplicação do cartão SD?
Onde está o conector de expansão para ligar por exemplo o módulo de visão embarcado? Colocar um conector com SPI e I2C e alimentação.
Que módulo de visao embarcado? Não sei que conector seria esse, não está na lista do que conversamos, mas posso colocar.
Quanto ao cartão sd, a tigers usa para gravar logs internos do robo, para estudo posterior, como valores de corrente mostrados nos inas, velocidades de cada roda. Outra proposta que eles oferencem pro cartão sd eh usar para guardar parametros adicionais para o robo.
Atualizado por Onias Castelo Branco há quase 7 anos
- Arquivo diagrama de blocos-placa mae2018.JPG diagrama de blocos-placa mae2018.JPG adicionado
Atualizado por Onias Castelo Branco há quase 7 anos
melhora no diagrama de blocos anterior, com a inclusao do conector de expansao com alimentação, spi e i2c.
Atualizado por Onias Castelo Branco há quase 7 anos
não sabia exatamente o que era um eFuse, estou lendo a seguinte referência (What is an eFuse - Texas Instruments): http://www.ti.com/lit/an/slva862/slva862.pdf
Atualizado por Onias Castelo Branco há quase 7 anos
Possíveis componentes:
acelerômetro-girômetro: MPU-6000 (mesmo da tigers)
https://www.digikey.com/product-detail/en/tdk-invensense/MPU-6000/1428-1005-1-ND/4038006?utm_adgroup=General&gclid=Cj0KCQiAq6_UBRCEARIsAHyrgUyPGXfWR2BAVMPWsVhR5M6AV-GZN73S7NzylIyV1y4Jj0bdqwdDnbwaAv6qEALw_wcB
https://store.invensense.com/datasheets/invensense/MPU-6050_DataSheet_V3%204.pdf
https://store.invensense.com/Datasheets/invensense/RM-MPU-6000A.pdf
micro sd: conector micro sd push-push r/a
https://www.digikey.com/product-detail/en/3m/2908-05WB-MG/3M5607CT-ND/1242498
http://multimedia.3m.com/mws/media/416257O/3mtm-card-connector-microsdtm-2900-series-ts2197.pdf
Atualizado por Onias Castelo Branco há quase 7 anos
Onias Castelo Branco escreveu:
Possíveis componentes:
acelerômetro-girômetro: MPU-6000 (mesmo da tigers)
https://www.digikey.com/product-detail/en/tdk-invensense/MPU-6000/1428-1005-1-ND/4038006?utm_adgroup=General&gclid=Cj0KCQiAq6_UBRCEARIsAHyrgUyPGXfWR2BAVMPWsVhR5M6AV-GZN73S7NzylIyV1y4Jj0bdqwdDnbwaAv6qEALw_wcB
https://store.invensense.com/datasheets/invensense/MPU-6050_DataSheet_V3%204.pdf
https://store.invensense.com/Datasheets/invensense/RM-MPU-6000A.pdf
a imbel tem um girometro/acelerometro diferente com preço similar:
Atualizado por Onias Castelo Branco há quase 7 anos
começo do desenvolvimento de uma placa breakout para o mpu-9250 para começo do desenvolvimento de firmware para o giroscopio.
links de referencia:
https://www.mouser.com/ds/2/400/DS-000129-ICM-30670-TYP-v1.0-3-1113367.pdf - datasheet
https://cdn.sparkfun.com/datasheets/Sensors/IMU/SparkFun_MPU-9250_Breakout.pdf - esquematico do breakout da sparkfun
register map: https://cdn.sparkfun.com/assets/learn_tutorials/5/5/0/MPU-9250-Register-Map.pdf
hook-up guide: https://learn.sparkfun.com/tutorials/mpu-9250-hookup-guide?_ga=2.251111686.1200175939.1519259836-1633744667.1519259836
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
Fazer o layout de forma que possa encaixar sobre uma discovery de um robô com a placa mãe atual.
Atualizado por Onias Castelo Branco há quase 7 anos
mudando o layout do pcb e analisando comparações entre o mpu9250 e outros giroscopios.
https://learn.adafruit.com/comparing-gyroscope-datasheets/overview
Nesse site ele fala que a datasheet do mpu-9250 é incompleta em termos de precisão, mas não vi usuários reclamando do desempenho (alguns só falando do preço mais alto).
O sr deu a ideia de fazer um suporte para a discovery, pensei então em já colocar também outros periféricos para teste, como os leds e o conector que o sr havia sugerido.
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
Ótimo. Acho um passo intermediário excelente.
Atualizado por Onias Castelo Branco há quase 7 anos
vista 3d do conector do micro sd: https://www.snapeda.com/parts/2908-05WB-MG/3M%20Interconnect%20Solutions/view-part/
Atualizado por Onias Castelo Branco há quase 7 anos
Onias Castelo Branco escreveu:
datasheet da nova possivel placa a ser usada stm32f411
3 interfaces de comunicação i2c, 3 de spi e 3 USART.
A nova placa não tem o timer8, que é usado atualmente no firmware. Porém, os timers 2 a 5 podem fazer leitura de encoder e envio de sinais pwm.
Precisamos de 10 sinais pwms e 8 sinais de encoder para controlar os 4 motores das rodas + drible em malha aberta. Para que o drible tenha encoder, são necessárias mais 2 portas de encoder. Pelo que entendi da datasheet, é possível sim colocar o encoder.
Analisando os pinos, vi que dois canais dos timers 2 e 5 estão nos mesmos pinos, então não podem ser usados juntos. Ela tem dois pinos de TIM2_CH3, TIM2_CH2 e TIM2_CH1 (ela não tem o TIM2_CH4).
Esse eh o procedimento correto para avaliar a aviabilidade do uso da stm32f411? Análise de cada pino da placa
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
Em quais canais de cada TIMER os dois sinais de UM encoder devem ser ligados?
Um único TIMER pode ser configurado com dois canais em ENCODER INPUT e os outros dois em PWM OUTPUT?
Atualizado por Onias Castelo Branco há quase 7 anos
Luiz Renault Leite Rodrigues escreveu:
Um único TIMER pode ser configurado com dois canais em ENCODER INPUT e os outros dois em PWM OUTPUT?
Acho que sim. A menos que eu coloque o canal inteiro como output ou input. Se sim, eu poderia colocar 2 encoders no mesmo timer e 2 pwms em outro.
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
Vamos sair do acho e confirmar esta informação. E a resposta da primeira pergunta?
Atualizado por Onias Castelo Branco há quase 7 anos
Li o reference manual da stm32f411xE para responder as perguntas do sr, porém não achei nada que falasse em quais canais que o encoder poderia ser usado ou sobre o conflito de ter parte dos canais em input e o resto em output. Na página 277 ele fala sobre encoders pro timer1 mas não menciona os canais, embora ele diga antes no texto que o pwm pode ser gerado independentemente pelos 4 canais. Ele menciona um exemplo de aplicação na parte do sensor hall que utiliza um canal como leitura do sensor e outra como saída pwm, me fazendo crer que é possível sim misturar input e output nos canais de um mesmo timer. No outro link que estou colocando ele fala sobre justamente isso, que posso colocar como input e output cada canal, porém é na stm32L4.
Em quais canais de cada TIMER os dois sinais de UM encoder devem ser ligados?
Não há discriminação disso na datasheet nem no reference manual.
Um único TIMER pode ser configurado com dois canais em ENCODER INPUT e os outros dois em PWM OUTPUT?
Pelo que li do reference manual, sim.
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
- Arquivo picture569-1.png picture569-1.png adicionado
- Arquivo picture569-2.png picture569-2.png adicionado
Em princípio os encoders tem que ser colocados nos canais 1 e 2.
![](picture569-1.png)
Pelo que entendi, um timer fica dedicado ao encoder e outro ao PWM.
![](picture569-2.png)
Além disso, qual é o registrador que armazena a contagem do encoder, que você tem que ler para pegar a posição? Quantos registradores deste existem por timer?
Atualizado por Onias Castelo Branco há quase 7 anos
Luiz Renault Leite Rodrigues escreveu:
Em princípio os encoders tem que ser colocados nos canais 1 e 2.
![](picture569-1.png)
Não vi relação disso com a seleção dos canais. Ele fala que coloca os valores pelo TI1FP1 e TI1FP2 e que pode ser igual a TI1 e TI2.
No exemplo do Hall ele usa 3 canais como encoder não?
Atualizado por Onias Castelo Branco há quase 7 anos
Além disso, qual é o registrador que armazena a contagem do encoder, que você tem que ler para pegar a posição? Quantos registradores deste existem por timer?
Só tem um registrador, o TIMx_ARR.
" Encoder interface mode acts simply as an external clock with direction selection. This means that the counter just counts continuously between 0 and the auto-reload value in the Advanced-control timer (TIM1) TIMx_ARR register (0 to ARR or ARR down to 0 depending on the direction). So user must configure TIMx_ARR before starting. in the same way, the capture, compare, prescaler, repetition counter, trigger output features continue to work as normal. Encoder mode and External clock mode 2 are not compatible and must not be selected together. "
Atualizado por Luiz Renault Leite Rodrigues há quase 7 anos
As entradas de encoder são TI1 e TI2. Se verificar o registrador de configurações, estas entradas só podem ser utilizadas no CH1 e CH2.
o ARR (Auto Reload Register) seria o valor máximo da contagem além do qual ele reinicia do 0.
Mas qual é o registrador que armazena a contagem atual do encoder?
Atualizado por Onias Castelo Branco há quase 6 anos
- Situação alterado de Em andamento para Fechada