Project

General

Profile

Atividade #678

Meta #523: Ter novas placas mãe para RoboCup 2018

Fazer esquemático e pcb da placa mãe modelo 2018

Added by Onias Castelo Branco almost 3 years ago. Updated over 2 years ago.

Status:
Fechada
Priority:
Imediata
Target version:
Start date:
04/24/2018
Due date:
04/25/2018
Spent time:

Board.STEP (1.47 MB) Onias Castelo Branco, 04/24/2018 02:09 PM

Periféricos.SchDoc (170 KB) Onias Castelo Branco, 05/03/2018 04:24 PM

Mother_board_SSL2018.SchDoc (202 KB) Onias Castelo Branco, 05/03/2018 04:24 PM

POWER.SchDoc (79.5 KB) Onias Castelo Branco, 05/03/2018 04:24 PM

INA220.SchDoc (67.5 KB) Onias Castelo Branco, 05/03/2018 04:24 PM

MOTORES.SchDoc (28.5 KB) Onias Castelo Branco, 05/03/2018 04:24 PM

pinagem discovery cube.JPG (79.2 KB) Preview Onias Castelo Branco, 05/03/2018 11:55 PM

aumento no plano.JPG (42.3 KB) Preview Onias Castelo Branco, 05/04/2018 01:36 AM

posicionamento dos componentes alfa.JPG (48.7 KB) Preview Onias Castelo Branco, 05/04/2018 01:36 AM

bottomlayer mother board 2018.JPG (51.4 KB) Preview Onias Castelo Branco, 05/04/2018 02:01 PM

toplayer mother board 2018.JPG (60.2 KB) Preview Onias Castelo Branco, 05/04/2018 02:01 PM

display-codigo.JPG (10.7 KB) Preview Onias Castelo Branco, 05/05/2018 01:44 PM

display-sch.JPG (11.6 KB) Preview Onias Castelo Branco, 05/05/2018 01:44 PM

display-expansor.JPG (34.3 KB) Preview Onias Castelo Branco, 05/05/2018 01:44 PM

picture124-1.png (81.4 KB) Preview Luiz Renault Leite Rodrigues, 05/05/2018 01:58 PM

mother-board-pcb-2d-bot-0605.JPG (63.5 KB) Preview Onias Castelo Branco, 05/06/2018 03:47 AM

mother-board-pcb-2d-top-0605.JPG (67.8 KB) Preview Onias Castelo Branco, 05/06/2018 03:47 AM

mother-board-pcb-3d-top-0605.JPG (60.4 KB) Preview Onias Castelo Branco, 05/06/2018 03:47 AM

pa10 discovery.JPG (46.8 KB) Preview Onias Castelo Branco, 05/07/2018 03:45 PM

timer-diagrama-de-blocos.JPG (66.8 KB) Preview Onias Castelo Branco, 05/08/2018 12:20 AM

SSL-discoverystm32f407.ioc (10.9 KB) Onias Castelo Branco, 05/10/2018 01:26 AM

cube_pinagem_new.JPG (74.5 KB) Preview Onias Castelo Branco, 05/10/2018 01:28 AM

current_calc.JPG (50.2 KB) Preview Onias Castelo Branco, 05/10/2018 02:56 AM

current_probe_motor0.JPG (143 KB) Preview Onias Castelo Branco, 05/10/2018 04:04 AM

current_probe_motor0_after.JPG (140 KB) Preview Onias Castelo Branco, 05/10/2018 04:04 AM

current_probe_5motors_bottom.JPG (169 KB) Preview Onias Castelo Branco, 05/10/2018 05:24 AM

current_probe_5motors_top.JPG (145 KB) Preview Onias Castelo Branco, 05/10/2018 05:24 AM

picture54-1.png (1.16 MB) Preview Luiz Renault Leite Rodrigues, 05/10/2018 10:25 AM

current_calc_update.JPG (52 KB) Preview Onias Castelo Branco, 05/10/2018 12:01 PM

current_probe_5motors_bottom_1005.JPG (76.6 KB) Preview Onias Castelo Branco, 05/10/2018 12:49 PM

current_probe_5motors_top_1005.JPG (78.2 KB) Preview Onias Castelo Branco, 05/10/2018 12:49 PM

mother-board-pcb-2d-bot-1005.JPG (96.7 KB) Preview Onias Castelo Branco, 05/10/2018 12:49 PM

mother-board-pcb-2d-top-1005.JPG (92.8 KB) Preview Onias Castelo Branco, 05/10/2018 12:49 PM

SSL-discoverystm32f407.ioc (11.7 KB) Onias Castelo Branco, 05/10/2018 03:09 PM

SSL-discoverystm32f407.ioc (13.1 KB) Onias Castelo Branco, 05/10/2018 05:38 PM

Pinagem%20discovery%20cube Aumento%20no%20plano Posicionamento%20dos%20componentes%20alfa Bottomlayer%20mother%20board%202018 Toplayer%20mother%20board%202018 Display codigo Display sch Display expansor Picture124 1 Mother board pcb 2d bot 0605 Mother board pcb 2d top 0605 Mother board pcb 3d top 0605 Pa10%20discovery Timer diagrama de blocos Cube pinagem new Current calc Current probe motor0 Current probe motor0 after Current probe 5motors bottom Current probe 5motors top Picture54 1 Current calc update Current probe 5motors bottom 1005 Current probe 5motors top 1005 Mother board pcb 2d bot 1005 Mother board pcb 2d top 1005

History

#1 Updated by Onias Castelo Branco almost 3 years ago

Adicionados os periféricos no esquematico da placa mãe.

Prosseguindo com adicionando o step para novo formato de placa e posicionamento dos componentes.

#2 Updated by Onias Castelo Branco almost 3 years ago

.no pcb, feitos os roteamentos dos 8 leds (adicionei tambem leds para as cores laranja e verde para possiveis implementações futuras).

No sch, analisei a ordem dos leds no led7 segmentos, porém deixei como estavam. Adicionei o resistor de pull-up no extensor de porta.

no sch, estou tendo problemas em interligar as portas da nova folha de sch com as demais, mas ja separei os pinos responsaveis. pela minha analise, o spi2 podera ser usado sem perdas pro projeto.

na pcb, falta posicionar corretamente o mpu9250 e o extensor de porta+led+botão.

#3 Updated by Onias Castelo Branco almost 3 years ago

Avaliar os componentes INA169 e INA250 para substituir o ina220 usado atualmente na placa.

datasheets:

ina169: http://www.ti.com/lit/ds/symlink/ina169.pdf

ina250: http://www.ti.com/lit/ds/symlink/ina250-q1.pdf

recomendação sobre o pcb: refazer todo o routing. posicionando primeiro os grupos funcionais e depois fazendo o routing (uma layer na horizontal e outra na vertical para evitar isolamento de planos)

#5 Updated by Onias Castelo Branco almost 3 years ago

Coloquei todos os pinos que usamos no robo no cube com os devidos nomes.

Coloquei tambem alguns dos pinos usados por funcoes da discovery, como os pinos que vao na usb.

#6 Updated by Onias Castelo Branco almost 3 years ago

Estou trabalhando no posicionamento da placa. Enquanto isso, percebi que esqueci o resistor para o ina169 do drible.

Destacado tambem o aumento na largura do plano da tensao de bateria que vai para os motores.

#7 Updated by Onias Castelo Branco almost 3 years ago

os sensores e leds infravermelhos estao separados pois o cartão sd esta entre eles.

#8 Updated by Onias Castelo Branco almost 3 years ago

segue anexa minha proposta de posicionamento e planos para a placa. mantive os reguladores de tensao na mesma posição, e mantive o interruptor na face da frente do robo.

Posso seguir para o roteamento?

#9 Updated by Onias Castelo Branco almost 3 years ago

Sobre o display 7 segmentos, estou com problemas em corrigir a pinagem dele. Pesquisei sobre como é a pinagem do display e encontrei a seguinte configuração:

Na placa, atualmente é assim que está setado o expansor de porta:

00- a
01- h
02- b
03- c
04- d
05- e
06- f
07- g

E coloquei no firmware os seguintes números para serem ligados e tive o seguinte resultado:


Percebi que tive um resultado errado porem inesperado. O pino superior a esquerda deveria ser o pino a, porém está no sch como G. Quanto eu aciono o g (valor lógico 0x80) o resultado que acende é o pino H (ou DP).

mandando o valor 0x01 eu aciono o pino a, fazendo acender o led inferior (correspondente ao valor D no sch usual) porém o a está ligado no E usual.

#10 Updated by Onias Castelo Branco almost 3 years ago

A imagem que eu coloquei está com resolução baixa.

Segue o resultado do que eu mandei por código:

valor - valor usual - valor esperado baseado no meu sch
0x01 - D - E
0x02 - F - B
0x04 - E - A
0x08 - G - H
0x10 - A - G
0x20 - B - F
0x40 - C - E
0x80 - H - C

#11 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

A pinagem do LCD, visto de cima, é:

#12 Updated by Onias Castelo Branco almost 3 years ago

mas o problema se mantem. inserindo 01 no codigo eu deveria ver acender o pino A e esta acendendo o pino D.

Mantenho pinagem e deixo anotado o padrao de anotação para resolver no firmware?

#13 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

A pinagem do LCD, visto de cima, é:

está de acordo com o que eu fiz no esquemático do componente.

#14 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Com certeza esta é a pinagem do Display. Conferi com o multímetro.

#15 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Com certeza esta é a pinagem do Display. Conferi com o multímetro.

okay. Adapto a pinagem do expansor para ficar da maneira padrão (abcdefgh ou hgfedcba) então?

#16 Updated by Onias Castelo Branco almost 3 years ago

Coloquei as mudancas mais recentes no meu repositorio do github:

https://github.com/OniasC/SSL_Mother_Board

Seguem abaixo os pcbs do bottom e do top. Para os stiches, segui a seguinte referencia do altium: https://www.altium.com/documentation/18.0/display/ADES/((Via+Stitching+and+Via+Shielding))_AD

Lá também contem o Step com a versão mais recente do projeto, que foi balizada com a mecanica para haver compatibilidade com o novo drible.



#17 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Muito bom trabalho.
Sugiro fazer simulação dos circuitos de potência. Estou liberando a licença do PDN.
Utilizar os circuitos da bateria até os módulos de motores. Fazer simulações considerando um motor de cada vez com corrente máxima, e depois com os 5 motores com corrente máxima, e por fim os 5 motores com corrente média.

#18 Updated by Onias Castelo Branco almost 3 years ago

Na revisão dos pinos, encontrei alguns conflitos entre pinos escolhidos por mim e usados por perifericos ja na discovery. Seguem eles abaixo:

pino - periferico discovery - meu uso

PA0 - user button - M2_ENCA

PA4 - LRCK/AIN1x (CS43L22) - D_CUR

PA5 - SCL/SPC (LIS302DL ou LIS3DSH) - SPI1_SCK

PA6 - SDO (LIS302DL ou LIS3DSH) - SPI1_MISO

PA7 - SDA/SDI/SDO (LIS302DL ou LIS3DSH) - SPI1_MOSI

PA10 - USB_ID - NRF_CS#

PA13 - SWDIO (SWD) - NRF_CE

PB3 - SWO (SWD) - M1_ENCB

PB6 - SCL (CS43L22) - M3_ENCA

PB9 - SDA (CS43L22) - I2C1_SDA

PB10 - CLK (MP45DT02) - SPI2_SCK

PC3 - DOUT/AIN4x (MP45DT02) - SPI2_MOSI

PC7 - MCLK (CS43L22) - M0_MBH

PC10 - SCLK (CS43L22) - MPU_CS

Destes, alguns já estavam na placa antiga, porém tive que mudar alguns pinos de posição. Haverá algum conflito em algum pino? Acredito que o unico que eu teria que mudar seria o PA10, pois usa features do USB. Há mais algum?

#19 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Muito bom trabalho.
Sugiro fazer simulação dos circuitos de potência. Estou liberando a licença do PDN.
Utilizar os circuitos da bateria até os módulos de motores. Fazer simulações considerando um motor de cada vez com corrente máxima, e depois com os 5 motores com corrente máxima, e por fim os 5 motores com corrente média.

Brasil. Vou tentar fazer hoje.

#20 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Na revisão dos pinos, encontrei alguns conflitos entre pinos escolhidos por mim e usados por perifericos ja na discovery. Seguem eles abaixo:

pino - periferico discovery - meu uso

PA0 - user button - M2_ENCA

PA4 - LRCK/AIN1x (CS43L22) - D_CUR

PA5 - SCL/SPC (LIS302DL ou LIS3DSH) - SPI1_SCK

PA6 - SDO (LIS302DL ou LIS3DSH) - SPI1_MISO

PA7 - SDA/SDI/SDO (LIS302DL ou LIS3DSH) - SPI1_MOSI

Para os 3 acima, basta colocar o LIS302DL ou LIS3DSH em modo SPI. Se não for acionado o CSN deles, não há interferência.

PA10 - USB_ID - NRF_CS#

Verificar se gera curto ao baixar o CSN

PA13 - SWDIO (SWD) - NRF_CE

Evitar utilizar este pino para manter possibilidade de debug.

PB3 - SWO (SWD) - M1_ENCB

Evitar utilizar este pino para manter possibilidade de trace/debug.

PB6 - SCL (CS43L22) - M3_ENCA

PB9 - SDA (CS43L22) - I2C1_SDA

Os dois sinais acima podem dar problema com o uso do M3_ENCA. Tentar manter os dois sianis como I2C.

PB10 - CLK (MP45DT02) - SPI2_SCK

PC3 - DOUT/AIN4x (MP45DT02) - SPI2_MOSI

Se você der CLK, ele te dá DOUT.

PC7 - MCLK (CS43L22) - M0_MBH

PC10 - SCLK (CS43L22) - MPU_CS

Verificar se pode desativar o CS43L22 através de algum sinal de reset.

Destes, alguns já estavam na placa antiga, porém tive que mudar alguns pinos de posição. Haverá algum conflito em algum pino? Acredito que o unico que eu teria que mudar seria o PA10, pois usa features do USB. Há mais algum?

#21 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

PC7 - MCLK (CS43L22) - M0_MBH

PC10 - SCLK (CS43L22) - MPU_CS

Verificar se pode desativar o CS43L22 através de algum sinal de reset.

O pino PD4 é responsável pelo reset do CS43L22. Não estamos usando o PD4

#22 Updated by Onias Castelo Branco almost 3 years ago

Sobre os pinos que o sr avisou que poderia dar problema:

PA10 - NRF_CE#

Verificar se gera curto ao baixar o CSN

como é um pino digital, vou tentar mudar o pino de lugar.

PA13 - SWDIO (SWD) - NRF_CE

Evitar utilizar este pino para manter possibilidade de debug.

como é um pino digital, vou tentar mudar o pino de lugar.

PB6 - SCL (CS43L22) - M3_ENCA
PB9 - SDA (CS43L22) - I2C1_SDA

Os dois sinais acima podem dar problema com o uso do M3_ENCA. Tentar manter os dois sianis como I2C.

Dando reset no CS43L22 o problema é resolvido? Caso não, o unico pino que eu poderia usar para substituir o M3_ENCA é o PD12, que é um dos leds (o verde no caso).

PB10 - CLK (MP45DT02) - SPI2_SCK
PC3 - DOUT/AIN4x (MP45DT02) - SPI2_MOSI

Se você der CLK, ele te dá DOUT.

Não há problema então? no caso o dout eh um pino mosi do spi mesmo.

#23 Updated by Onias Castelo Branco almost 3 years ago

Quanto ao uso dos pinos destinados ao SWD. Já usamos o SWO para o encoder. Não tenho outro substituto para o M1_ENCB (o pino com a mesma funcionalidade é o PA2, ocupado pela M2_ENCB).

Quer dizer que nunca usamos a feature de debug?

#24 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Sobre os pinos que o sr avisou que poderia dar problema:

PA10 - NRF_CE#

Verificar se gera curto ao baixar o CSN

como é um pino digital, vou tentar mudar o pino de lugar.

Verifique no esquemático se há problema ao controlar este pino. Pode ser que não precise mudar.

PA13 - SWDIO (SWD) - NRF_CE

Evitar utilizar este pino para manter possibilidade de debug.

como é um pino digital, vou tentar mudar o pino de lugar.

PB6 - SCL (CS43L22) - M3_ENCA
PB9 - SDA (CS43L22) - I2C1_SDA

Os dois sinais acima podem dar problema com o uso do M3_ENCA. Tentar manter os dois sianis como I2C.

Dando reset no CS43L22 o problema é resolvido? Caso não, o unico pino que eu poderia usar para substituir o M3_ENCA é o PD12, que é um dos leds (o verde no caso).

Provavelmente com o reset do CS43L22 não haverá problema.

PB10 - CLK (MP45DT02) - SPI2_SCK
PC3 - DOUT/AIN4x (MP45DT02) - SPI2_MOSI

Se você der CLK, ele te dá DOUT.

Não há problema então? no caso o dout eh um pino mosi do spi mesmo.

Pelo contrário. Irá interferir na sua comunicação SPI.

#25 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Quanto ao uso dos pinos destinados ao SWD. Já usamos o SWO para o encoder. Não tenho outro substituto para o M1_ENCB (o pino com a mesma funcionalidade é o PA2, ocupado pela M2_ENCB).

Quer dizer que nunca usamos a feature de debug?

SWO é utilizado para trace. Caso queira usar, deverá desativar o encoder.

O SWD deve ficar reservado para debug. Caso contrário não conseguirá fazê-lo ou com o debug não será possível testar o NRF.

#26 Updated by Onias Castelo Branco almost 3 years ago

Onias Castelo Branco escreveu:

Quanto ao uso dos pinos destinados ao SWD. Já usamos o SWO para o encoder. Não tenho outro substituto para o M1_ENCB (o pino com a mesma funcionalidade é o PA2, ocupado pela M2_ENCB).

Quer dizer que nunca usamos a feature de debug?

Posso não usar o timer2_ch2 (pino em conflito) e passar a usar o timer2_ch3? Se sim, posso realocar o pino do clk do spi2 para o pb13 que está vazio.

#27 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Posso não usar o timer2_ch2 (pino em conflito) e passar a usar o timer2_ch3? Se sim, posso realocar o pino do clk do spi2 para o pb13 que está vazio.

Mas para encoder, não tem que utilizar CH1 e CH2? Pelo menos no STM32F1 é assim.

#28 Updated by Onias Castelo Branco almost 3 years ago

acredito que dê pra usar sim.

#29 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

Posso não usar o timer2_ch2 (pino em conflito) e passar a usar o timer2_ch3? Se sim, posso realocar o pino do clk do spi2 para o pb13 que está vazio.

Mas para encoder, não tem que utilizar CH1 e CH2? Pelo menos no STM32F1 é assim.

Então barro. Existe solução por software?

#30 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

Posso não usar o timer2_ch2 (pino em conflito) e passar a usar o timer2_ch3? Se sim, posso realocar o pino do clk do spi2 para o pb13 que está vazio.

Mas para encoder, não tem que utilizar CH1 e CH2? Pelo menos no STM32F1 é assim.

Então barro. Existe solução por software?

Verificou esta questão no RM, antes de desistir?

#31 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

acredito que dê pra usar sim.

Exatamente.

#32 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

PB10 - CLK (MP45DT02) - SPI2_SCK
PC3 - DOUT/AIN4x (MP45DT02) - SPI2_MOSI

Se você der CLK, ele te dá DOUT.

Não há problema então? no caso o dout eh um pino mosi do spi mesmo.

Pelo contrário. Irá interferir na sua comunicação SPI.

Trocando o pino PB10 (CLK) pelo pino PB13 (atualmente livre na placa mae e na discovery) resolvo o conflito desses dois pinos, correto?

#33 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

Posso não usar o timer2_ch2 (pino em conflito) e passar a usar o timer2_ch3? Se sim, posso realocar o pino do clk do spi2 para o pb13 que está vazio.

Mas para encoder, não tem que utilizar CH1 e CH2? Pelo menos no STM32F1 é assim.

Então barro. Existe solução por software?

Verificou esta questão no RM, antes de desistir?

Abri ele agora a pouco e estou lendo a parte de leitura de encoder. Não achei nada que limitasse aos dois primeiros canais. Mas posso só não ter entendido também.

#34 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Abri ele agora a pouco e estou lendo a parte de leitura de encoder. Não achei nada que limitasse aos dois primeiros canais. Mas posso só não ter entendido também.

Coloque aqui o diagrama de blocos do TMR.

#35 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

Trocando o pino PB10 (CLK) pelo pino PB13 (atualmente livre na placa mae e na discovery) resolvo o conflito desses dois pinos, correto?

Possivelmente não resolve. Tem que ver o datasheet do componente para checar o comportamento do DOUT. Não consegue trocar o PC3?

#36 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

Trocando o pino PB10 (CLK) pelo pino PB13 (atualmente livre na placa mae e na discovery) resolvo o conflito desses dois pinos, correto?

Possivelmente não resolve. Tem que ver o datasheet do componente para checar o comportamento do DOUT. Não consegue trocar o PC3?

Pc3 é o spi2_mosi. Ele pode ir para o PB15 que atualmente é o DAH (TIM12_CH2). Posso ativar o pwm do drible em qualquer outro pino de timer (no caso, o pino PE5 - tim9_ch1 ocupado pela funcionalidade M0_MAL - pino digital de output, poderia ir para um pino não ocupado).

#37 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

Abri ele agora a pouco e estou lendo a parte de leitura de encoder. Não achei nada que limitasse aos dois primeiros canais. Mas posso só não ter entendido também.

Coloque aqui o diagrama de blocos do TMR.

#38 Updated by Onias Castelo Branco almost 3 years ago

Entendi. Realmente, são só os canais 1 e 2.

#39 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Exatamente.

#40 Updated by Onias Castelo Branco almost 3 years ago

Os problemas que persistem são os pinos de SWD (PA13 e PB3). Consigo resolver o problema do pb10 e pc3 com a realocação dos pinos que eu mencionei acima.

PA13 é o nrf_ce que posso resolver escolhendo um pino digital diferente.

PB3 é o m1_encb e o unico substituto é o pa1 que é o m2_encb (que não tem substituto).

#41 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Muito bom trabalho.
Sugiro fazer simulação dos circuitos de potência. Estou liberando a licença do PDN.
Utilizar os circuitos da bateria até os módulos de motores. Fazer simulações considerando um motor de cada vez com corrente máxima, e depois com os 5 motores com corrente máxima, e por fim os 5 motores com corrente média.

fazendo o teste na fonte, a corrente de stall ficou 2.6A com o motor no encaixe mecânico. e a corrente com o motor fluindo a 8.1V ficou a 180mA.

link para tutorial do pdn: https://www.altium.com/documentation/1.0/display/NEXUS/((PDN+Analyzer))v2_AD

#42 Updated by Onias Castelo Branco almost 3 years ago

Antes de checar o PDN, corrigi no esquematico e no cube os pinos que determinamos serem necessarios trocar.

pb10 -> pb13 (spi2_sck)
pc3 -> pb15 (spi2_mosi)
pc15 -> pe5 (dah)
pe5 -> pc15 (m0_mal)
pa13 -> pa14 (nrf_ce) pc12 (nrf_ce)

#43 Updated by Onias Castelo Branco almost 3 years ago

era esta a conta que eu deveria fazer?

achei nesta referencia: http://www.4pcb.com/trace-width-calculator.html

#44 Updated by Onias Castelo Branco almost 3 years ago

Após a explicação sobre o funcionamento do pdn, modifiquei algumas trilhas e então rodei a simulação para 4A com os planos antigos. Ficou da seguinte forma:

Modifiquei os planos do MA, MB, fusível e do ina169. Aumentei a corrente para 7A e segue o resultado da simulação:

Analisando os números, vi que nos pinos B e A passam uma corrente de 3.3 a 3.7A. (após segunda modificação) E chega ao motor uma potencia de 8.2V para uma entrada de 8.4V

#45 Updated by Onias Castelo Branco almost 3 years ago

Fazendo a simulação para os quatro motores das rodas (corrente de 7A) e o motor do drible (8A) inserindo uma potencia de 8.4V, temos que:

Alguns pinos tem uma corrente atravessando-os na ordem de 1.5A.

Os motores recebem os seguintes potenciais:

M0: 8.04V
M1: 8.022V
M2: 8.154V
M3: 8.137V
DRIBLE: 8.006V

Seguem as imagens dos heat maps das correntes.

O sr acha necessário realizar mais alguma modificação no layout?


#46 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias Castelo Branco escreveu:

era esta a conta que eu deveria fazer?

achei nesta referencia: http://www.4pcb.com/trace-width-calculator.html

Na verdade, a espessura é a do cobre, ou seja, 35 um ou 1oz/inch2

#47 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

O TOP está muito bom.

No bottom, tentar modificar as trilhas marcadas em verde, visando permitir um fluxo de corrente pelo caminho em magenta.

picture54-1.png

#48 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Onias, abri seu Cube Project e vi que os periféricos não estão configurados.

Sugiro que o faça, para verificar alguma incompatibilidade.

#49 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias, abri seu Cube Project e vi que os periféricos não estão configurados.

Sugiro que o faça, para verificar alguma incompatibilidade.

Não sabia que tinha como fazer isso. Vou me informar sobre o processo.

#50 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Onias Castelo Branco escreveu:

era esta a conta que eu deveria fazer?

achei nesta referencia: http://www.4pcb.com/trace-width-calculator.html

Na verdade, a espessura é a do cobre, ou seja, 35 um ou 1oz/inch2

Refiz a conta. Aceitando um aumento de temperatura para 20C a espessura necessaria para o VBAT eh de 9mm (o plano atual tem 10mm)

#51 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

O TOP está muito bom.

No bottom, tentar modificar as trilhas marcadas em verde, visando permitir um fluxo de corrente pelo caminho em magenta.

Fiz as devidas correções. Segue anexo o novo caminho das trilhas e nova simulação.

current_probe_5motors_bottom_1005.JPG
current_probe_5motors_top_1005.JPG
mother-board-pcb-2d-bot-1005.JPG
mother-board-pcb-2d-top-1005.JPG

As correntes mais altas que entram nos pinos de ground são de 3,x A para os pinos de gnd dos modulos de motor, alguns pinos proximos destes são da ordem de 1A e dois de 2A (furo de 0.6 de diametro interno e 0.8 externo). E está entrando 36 A para a placa (= 7A*4 + 8A), fazendo sair 17A em dois pinos de gnd (os da bateria e do switch).

As voltagens que chegam para os motores são as seguintes:

m0-8.044V
m1-8.026V
m2-8.155V
m3-8.139V
drible-8.01V

#52 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Em termos de análise de potência, acho que é isso. Bom trabalho.
Só falta confirmar a configuração dos periféricos no Cube.

#53 Updated by Onias Castelo Branco almost 3 years ago

Luiz Renault Leite Rodrigues escreveu:

Em termos de análise de potência, acho que é isso. Bom trabalho.
Só falta confirmar a configuração dos periféricos no Cube.

Obrigado capitão. Estou fazendo isso agora.

#54 Updated by Onias Castelo Branco almost 3 years ago

Não soube setar direito o clock (teria que checar os prescalers que estão atualmente no firmware), a configuração do ADC e os pinos GPIO acusaram o seguinte warning:

"some signals are not used in any IP's mode"

Não parece ser preocupante:

https://community.st.com/thread/40725-cubemx-for-f0-has-no-gpio-settings

#55 Updated by Luiz Renault Leite Rodrigues almost 3 years ago

Configure o RCC, habilite o Serial Wire Debug, Configure os timers, USB, etc.

#57 Updated by Onias Castelo Branco almost 3 years ago

  • Status changed from Em andamento to Resolvida

#58 Updated by Onias Castelo Branco over 2 years ago

  • Status changed from Resolvida to Fechada

Also available in: Atom PDF

Go to top
Add picture from clipboard (Maximum size: 500 MB)