- Não se esqueça do killswitch.
- Nunca quebre a primeira regra.
Se essas regras simples forem violadas, o resultado, na melhor das hipóteses, será como no vídeo abaixo.
Neste artigo, explicarei como configurar e gerenciar adequadamente os controladores Kelly KLS. Como conectar controladores Kelly via UART. Por exemplo, Kelly + STM32 ou Kelly + Arduino.

Conectar o motor ao controlador Kelly é simples. Cabos de alimentação em terminais para parafusos no corpo. Sensores Hall para o conector DJ7061Y.

Os controles de conexão dependem de suas tarefas. Por exemplo, para um bug, conectamos todos os controladores a uma placa comum.

Em outros casos, usamos uma placa com um microcontrolador STM32 para mixagem de canais.
O guia completo para configurar controladores Kelly KLS
Instale o programa para configuração em um PC. O aplicativo Android permite apenas monitorar os parâmetros. Conectamos o PC e o controlador rs232 <--> conversor usb.

Volt baixo
, bms .
Over volt
over volt . , . , bms .
Curent percent
, , , , , . . 90, 90 300 , 300 90 270 .
Battry limit
40 40 , . , . 300 , 90 270 40 108 . 110. , , , BMS.
Identification angle
, auto detect auto detect auto detect . , 170
85, 85 170.
auto detect 170, WRITE , . 85 , .
C write , write , , - , . , .
TPS LOW error ,
TPS High error. , . - , . .
TPS type. 0 5 . 2 1 4 .
TPS DEAD LOW , . speed, , . , , .
40 43 , 0 255 2.55. 42 2,55 16, , , 42 48 48 2,55 18 20 2,55 low high low dead.
Fwd map
50 50- 30 , 30 , 70 0 100.
Rev map
50 , 20. 80 .
Brake type
. 0 , 0 5 2 high . break dead High , . brake pedal , , .
MAX OUTPUT FRE
1000 , . , .
MAX SPEED
motospeed , , max speed. , , . 15000 . 3 .
THREE SPEED
, . - 90, , 1 3.
Pwm frequency
. 10 20 , 20 20 - , , , 10 . , 10 .
Startup h-pedel
Isso significa que se a caixa de seleção estiver marcada e você ligar o controlador no momento em que o stick do acelerador for pressionado, ele não funcionará, mas apresentará um erro de que o stick do acelerador foi pressionado inicialmente e quando você o soltar, pressione-o e ele irá. desmarque a caixa de seleção, então se você pressionou o stick do acelerador e ligou o controlador, ele irá imediatamente avançar, esta é uma proteção contra o fato de que ele não avança com o stick do acelerador pressionado enquanto o ponto fraco está ativado.
Freio h-pedel
Proteção do freio , pelo que entendi, quando o freio não é pressionado, vai dar um erro. Proteção
NTL h-pedel
da marcha neutra se durante o engate a marcha neutra não estiver ligada, isso dará um erro também alguma proteção
Joystick
O modo joystick é usado para veículos que têm um curso equivalente, como pernas para a frente para trás, por exemplo, há uma cadeira de rodas ou algum tipo de carrinho que pode ir para frente e para trás. Mas, para este modo, você precisa de um joystick e um botão de aceleração especial que gira em uma e outra direção e tem uma posição neutra que fornece metade da tensão na saída de dois volts e meio por padrão se você girar e avançar reduz a tensão. Se você girar para frente e para trás, o joystick aumentará.
Chave de três marchas
interruptor gatilho aqui está escrito que se a caixa de seleção estiver marcada, então você tem um neutro, há um interruptor para frente e para trás, é forçosamente necessário para que saia, para a frente, gire à força o botão para frente para ir para trás, você precisa forçar o botão para trás. Se a caixa de seleção não estiver marcada, ele avança por padrão, você não precisa pressionar nada adicionalmente, e retorna apenas no momento em que o botão de reversão é pressionado.
Boost
Vamos apenas dizer que para sobreviver com o máximo do controlador, ele dá a fase e a corrente da bateria em 100 por cento por alguns segundos se você marcar a caixa, então você pode conectar o botão boost e, por exemplo, pressionando o botão boost, você meio que simula um pressionamento completo do acelerador e esses parâmetros são limite de bateria e cuidado cem por cento por cento.
Pedal interruptor
Uma característica muito estranha também, proteção contra tolos ou crianças. Não conheço um botão adicional para o pedal do acelerador ou para o gancho do acelerador até que seja pressionado, a alavanca do acelerador simplesmente não está ativa.
Cruise
Função de controle de cruzeiro, se, por exemplo, você pegar uma determinada velocidade e segurar o stick do acelerador por 3 ou 5 segundos sem alterar sua posição, então o controlador percebe isso como a velocidade de cruzeiro e, consequentemente, após soltar o stick do acelerador, ele vai nessa velocidade sozinho ... Para parar, basta puxar novamente o manete do acelerador, girá-lo por assim dizer ou pressionar o freio analógico até o fim. Tenha em mente o freio discreto usual. Basta pressionar o botão e o cruzeiro sairá do modo.
Mude a direção
O controlador realiza a detecção automática, às vezes acontece que a roda gira na direção errada que você deseja. Se ele girar na direção errada e voltar, então para não alterar a configuração das fases, não faça isso novamente para detectar, basta entrar no programa, marcar a caixa, clicar em escrever e reiniciar o controlador e ele apenas muda a direção sem alterar nada.

Motor mominal curr
Este parâmetro é responsável pela corrente nominal do motor, mas apenas durante a auto-identificação.
Pólos do motor O
número de pólos, nomeadamente pólos e não pares de pólos, ou seja, o número real de pólos do seu motor. Isso é necessário para a exibição correta do limite de velocidade correto, mas se você não alterar nada aqui, em princípio também funciona.
Isso não afetará nada além das limitações e a exibição no monitor não terá mais importância.
Tipo de sensor de velocidade
Esta é a escolha de, digamos, sensores de ângulo do motor. Se houver um dois, esses são sensores Hall comuns, eles são usados em 99 por cento de todos os motores.
Postes de resolução
Não precisamos, pois não os usamos. Temos 3 sensores hall e simplesmente não pode haver nenhum outro número. Portanto, deve haver tantos sensores Hall quantos sensores de fase.
Motor temp sersor Um
tipo de sensor de temperatura para o próprio motor. Se você tiver um desses tipos escritos em azul, poderá usar um sensor Hall.
Corte de alta temperatura
Esta é a alta temperatura na qual o controlador é totalmente desligado. Ou melhor, não se trata do controlador, mas do motor.
Line hall zero
Os parâmetros que são responsáveis pelos sensores analógicos hall, só precisamos deles.

IQ kp IQ ki ID kp ID ki
Parâmetros responsáveis pelo controlador PID.
Brk ad brk%
Parâmetros para frenagem analógica. Não usamos freio analógico. Se você usar a mesma alavanca de freio do acelerador, que altera a tensão de saída do ângulo de rotação, então você pode usar e especificar a quantidade máxima, a corrente máxima que é expressa como uma porcentagem de 0 a 50.
Rls tps brk%
Quando a alavanca é liberada, o acelerador começa a desacelerar. Bem, por um lado, é como uma emulação de um motor de combustão interna, por outro lado, se você não tiver uma alavanca de freio, você pode usar os parâmetros. Por exemplo, defina o valor como 15 e, portanto, quando você soltar o acelerador, terá 15% de desaceleração, respectivamente, e 15% de recuperação.
Ntl brk%
Ao mudar para a marcha neutra, a regeneração também é acionada em porcentagem, então não uso 0. A regeneração em todos os lugares pode ser definida para um máximo de 50 por cento.
Tempo de
aceleração Este é o tempo de aceleração, vai em incrementos de 0,1 segundo, ou seja, um significa 0,1 segundo significa 10 segundos. Este é o tempo de reação ao manche do acelerador a partir do momento em que você o puxa até o controlador, levando-o à potência nominal.
Tempo de aceleração
Quando você redefine o acelerador, o tempo que leva para o controlador redefinir a energia após você redefinir o acelerador.
Tempo de frenagem Eu configurei o
valor para dois segundos e meio e acabou sendo muito conveniente para mim, ou seja, quando pressiono a alavanca do freio, ela não começa a frear imediatamente, mas começa a aumentar gradativamente a potência de frenagem. Potência por recuperação de dois segundos e meio, ou seja, aqui também a discretização é de 0,1 segundo e em 2 segundos e meio começa a aumentar a força de travagem até 30 por cento, como aqui indicado em dois segundos e meio.
Tempo rls freio
Este é o tempo de reinicialização da regeneração. Aqui é aconselhável definir um valor menor, ou seja, um para que, ao soltar o freio, o freio seja imediatamente desengatado e não diminua mais a velocidade.
Freio sw brk
Esta é a porcentagem de frenagem com frenagem discreta, ou seja, quando a alavanca do freio é pressionada, eu a ajusto para 30%. Infelizmente não consigo mais regulá-lo porque já quebra a roda de views.Para mim trinta por cento é o suficiente para travar muito bem.
Change dir brk
Quando o reverso está ligado, ele também pode iniciar a recuperação, ou seja, quando o reverso é ligado em movimento, aliás, havia até uma dúvida em algum lugar do fórum o que aconteceria se o reverso fosse ligado em movimento. Nada acontecerá, a princípio ele será reduzido a zero por esses cinco por cento ou 50 por cento. Se este valor for restaurado e depois de uma parada completa, ele começará a dirigir desde o início da recuperação e então se moverá.
Kelly + Arduino. Conexão UART
a estrutura de dados T_Sync_Comm_Buff é usada pelo controlador com um comprimento total de dados de 19 bytes. Os dados completos enviados ou recebidos de um controlador incluem um campo de comando, um campo no_bytes e um campo de dados. A taxa de transmissão serial é 19200.
O campo de comando indica a operação. A resposta do controlador retorna o mesmo valor de comando recebido.
O campo no_bytes indica o número de bytes a serem enviados ou recebidos do campo do buffer de dados, excluindo o byte de checksum.
O campo do buffer de dados tem duas partes: dados válidos e uma soma de verificação. Antes de enviar dados do tipo T_Sync_Comm_Buff, o método ETS_TxMsg cria uma soma de verificação e a coloca em pontos de dados válidos. Depois de receber os dados completos do controlador, o método ETS_RxMsg criará um checksum e o comparará com o checksum no campo do buffer de dados de recebimento.
ETS_FLASH_OPEN 0xF1
ETS_FLASH_READ 0xF2
ETS_A2D_BATCH_READ 0x1b
ETS_USER_MONITOR1 0x3A
ETS_USER_MONITOR2 0x3B
Analisando a resposta
Comando ETS_A2D_BATCH_READ
Resposta do controlador
no_bytes 16
dados [0] Dados A / D do freio
[1] Dados A / D TPS
[2]
dados A / D da temperatura do motor [3]
Dados A / D da alimentação de controle [4]
Dados A / D Vs [ 5]
Dados B + A / D [6] Dados A / D de temperatura do controlador
[7] Dados Ia A / D
[8]
Dados A / D Ib [9] Dados Ic A / D
[10]
Dados PCB_Temp [11] Vb A
Dados / D [12] Dados Vc A / D
[13]
Dados H_Temperature [14] Dados V + A / D
[15]
Comando L_Temperature ETS_USER_MONITOR1
Resposta do controlador
no_bytes 16
dados [0] Dados TPS A / D
[1] Freio A / D
dados [2] BRK_SW
dados [3] FOOT_SW
dados [4]
Dados FWD_SW [5]
Dados REV_SW [6]
Dados HALL_SA [7]
Dados HALL_SB [8]
Dados HALL_SC [8]
Dados B_Voltage [10]
Dados Motor_Temp [11]
Dados de temperatura do controlador [12]
Dados de direção de configuração [13 ]
Dados de direção real [14] Break_SW2
dados [15]
Comando ETS_USER_MONITOR2
Resposta do controlador
no_bytes 16
dados [0] MSB de
dados de estado de erro do controlador [1] LSB de
dados de estado de erro do controlador [2] MSB de velocidade mecânica em
dados RPM [3] LSB de velocidade mecânica em
dados RPM [4]
dados [5]
dados [6]
dados [7]
dados [8]
dados [8]
dados [10]
data [11]
data [12]
data [13]
data [14]
data [15]
Começamos convertendo o buggy em um motor de combustão interna para tração elétrica.
Importamos controladores para nossas tarefas. Nós também podemos fornecer para você. Para solicitar controladores Kelly, deixe uma solicitação em nosso site .

Criamos várias soluções na área da robótica. Se você tem a tarefa de criar uma plataforma elétrica ou uma plataforma para um robô, ficaremos felizes em cooperar com golf-robotics.ru .