LusoRobótica - Robótica em Português
Robótica => Iniciantes => Tópico iniciado por: Psycop em 02 de Junho de 2012, 18:06
-
Boas
Estou com uns problema em conseguir correr um script que encontrei na internet que me permitia ler e fazer um log dos dados recolhidos pelo arduino de um sensor de temperatura LM335, mas ocorre um erro de na abertura do ficheiro de saida!
O script onde me estou a basear é o deste site: http://arduino-ce.blogspot.pt/2011/01/monitor-de-temperatura-com-log.html (http://arduino-ce.blogspot.pt/2011/01/monitor-de-temperatura-com-log.html)
Se bem que estou a usar o seguinte código para ler do sensor:
float temp;
int tempPin = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
temp = analogRead(tempPin);
temp = (((temp/1023)*5)*100)-273.15;
Serial.print("A Temperatura é de: ");
Serial.println(temp);
delay(5000);
}
Alguém me pode ajudar com isto? não haverá maneira de fazer este script em C? Pois em C eu sempre me orientava melhor!
Cumps
-
O que postaste não é um script, é mesmo código de um programa em C/C++. C não é uma linguagem de scripting, como o Python por exemplo.
O programa que faz "log" dos dados é para correr no teu PC, certo? Estás a usar o código BASIC que está nesse site? Verifica se tens a porta COM bem selecionada (muito provavelmente não é a mesma que aparece no código desse site).
Se preferes C, experimenta C# que tem uma classe "SerialPort" muito fácil de usar.
-
Boas
Eu sei que o código que postei não é script, mas sim o código que efectivamente o arduino corre, o que eu nao consigo é colocar a correr o script vb que aparece no site de modo a guardar os dados num ficheiro txt.
Quanto ao C# não sei, porque nunca programei com C#.
Cumps
-
O primeiro passo é escolher a linguagem de programação a usar.
Se conheces uma bem e não queres perder muito tempo, usa essa. Se tens curiosidade, pega numa que gostasses de saber e pode ser um bom ponto de partida :)
De seguida perguntas ao Google como é que se lê de uma porta série com essa linguagem...
Sem dizeres pelo menos a linguagem, ninguém aqui te pode ajudar.
Podes fazê-lo com C#, Java, PHP, Python, ......... Tu é que tens de escolher
-
Neste momento sinto-me relativamente à vontade com C, e era também por isso que queria guardar os dados num ficheiro txt pois depois seria fácil em manipular esses dados recolhidos.
Procurei sobre scripts em C no Google, mas não encontrei nada de especial.
Cumps
-
Lá estás tu a dar-lhe nos "scripts em C" :D Não existe tal coisa. Nem em C, nem em VB.
C é uma linguagem de baixo nivel e o acesso à porta série não é de todo muito simples. Por isso a minha sugestão é que utilizes uma linguagem de mais alto nivel como as que o microbyte referiu e que já têm classes próprias para acesso à porta série.
Se tens experiência em C, diria que o caminho mais fácil será C#. Instalas o Visual C# Express e está a andar. Python tem o "pySerial" e também é muito simples de usar. Java tens a biblioteca "rxtx". Qualquer uma destas linguagens tem métodos simples de aceder/criar/manipular ficheiros.
-
Ok, Vou informar-me e esclarecer todas as minhas dúvidas sobre estes assuntos e seguir um caminho!
cumps
-
O problema com a criação do ficheiro de saída deve estar relacionada com o local onde tentas gravar. Em Vista e superior a gravação na raiz do volume C obriga a permissões elevadas. Experimenta mudar o caminho para outra directoria, de preferência dentro da tua 'Meus Documentos'.
-
Boas
Tentei também mudar a localização desse ficheiro para os meus documentos, mas tal também não resultou!
Cumps
-
Olá novamente!
Eu tenho tentado automatizar o processo de leitura e gravação dos dados num ficheiro, mas não consegui ainda nada de palpavel.
Estou a usar o termite 2.8 para guardar os dados num ficheiro, alguém me sabe indicar uma forma de automatizar este processo? Que linguagem script devo usar? Como e onde devo e posso aprender a usar a linguagem de script?
Cumprimentos
-
Linguagem de programação rapaz.
Se queres algo simples, ou Python ou Visual Basic.