Olá,

Sou novato em programação e preciso de uma ajuda dos mestres em arduino de plantão.

Tenho um projeto para controlar motores de passo através do arduino, mas queria fazer com que estes motores seguissem uma sequencia de movimentos gravados em um cartão SD.

Como exemplo no cartão SD teria um arquivo .txt escrito assim:

200, 1500, 100, 500

300, 200, 1000, 2000

O programa faria a leitura dos valores da primeira linha e enviara para 2 motores a velocidade e o número de passos para andar. Quando finalizado o movimento o arduino faria a leitura da linha seguinte e repetiria o processo até o final do arquivo.

Sinceramente não tenho idéia de como fazer isso. Na biblioteca SD só encontrei a funcao read, mas ela só lê o documento inteiro.

Alguma dica ou código exemplo que eu possa utilizar?

Exibições: 604

Responder esta

Respostas a este tópico

Cartão SD permite armazenar uma quantidade imensa de Bytes (Giga bytes).

Seu motor precisará de alguns bytes - vai precisar de um cartão SD mesmo assim?

Use a EEPROM do Atmega - 1 Kbyte

http://arduino.cc/en/Reference/EEPROM

http://playground.arduino.cc/Portugues/LearningEEPROMWrite

O objetivo é construir uma espécie de CNC, por isso acho que a eeprom não é suficiente para sequências grandes de movimentos.

Look well (traduzindo - veja bem) ...

http://arduino.cc/en/Reference/SD

José,
Obrigado pela resposta. Já pesquisei sobre a biblioteca SD, porem o problema e que só existe a função read() que retorna todo o conteúdo do arquivo, não tem função que permita a leitura parcial, ou pelo menos eu não encontrei :(

Baixe a biblioteca SDfat. Ela já possui em exemplo para escrita e leitura de arquivo .CSV.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço