LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: FCarvalho5555 em 06 de Fevereiro de 2014, 17:13

Título: Shield Ethernet + Base de Dados
Enviado por: FCarvalho5555 em 06 de Fevereiro de 2014, 17:13
Boas pessoal  :)

Qual a melhor forma de colocar dados medidos pelos arduino a partir da shield ethernet numa base de dados remota ?
Título: Re: Shield Ethernet + Base de Dados
Enviado por: zordlyon em 06 de Fevereiro de 2014, 17:57
Uma base de dados, e Java e Sockets ...
Título: Re: Shield Ethernet + Base de Dados
Enviado por: CBX em 06 de Fevereiro de 2014, 20:00
deduzo que a base de dados remota não esteja num arduino? neste caso php e sql são a tua melhor opção, se estiver a correr no arduino, XML
Título: Re: Shield Ethernet + Base de Dados
Enviado por: tarquinio em 06 de Fevereiro de 2014, 20:06
Pois a coisa vai depender de onde é que tens a base de dados e que tipos de acesso tens. O arduino é bastante limitado em qualquer coisa que exija encriptação, mas consegues enviar os dados usando webservices de várias formas.
Título: Re: Shield Ethernet + Base de Dados
Enviado por: senso em 06 de Fevereiro de 2014, 21:19
Encriptação?
Então e ram/flash para meter uma base de dados?..
Título: Re: Shield Ethernet + Base de Dados
Enviado por: tarquinio em 06 de Fevereiro de 2014, 21:32
Encriptação? Então e ram/flash para meter uma base de dados?..
Não percebi esta resposta... Eu nem estava a considerar sequer a hipotese da base de dados estar num arduino... Falei em encriptação especificamente porque já tive de fazer um trabalho em que tinha precisamente de enviar dados para uma base de dados com um arduino e houve problemas por causa da encriptação (aquilo só aceitava ligações por https).
Título: Re: Shield Ethernet + Base de Dados
Enviado por: senso em 06 de Fevereiro de 2014, 21:49
Esse é um caso em que um at91sam a correr linux seria perfeito, stack de ethernet completa, com tudo, e com muitos pinos para IO..
Título: Re: Shield Ethernet + Base de Dados
Enviado por: tarquinio em 06 de Fevereiro de 2014, 22:17
Sim tendo o hardware à escolha poderia ter escolhido outra opções... No meu caso tinha mesmo de usar um arduino ethernet, o hardware já existia, so ia modificar o software. Imagino que o FCarvalho falando apenas num ethernet shield esteja a considerar usar algo equivalente, daí o aviso.
Título: Re: Shield Ethernet + Base de Dados
Enviado por: FCarvalho5555 em 08 de Fevereiro de 2014, 10:39
A ideia é ter o auduino a medir níveis de luminosidade e introduzir esses valores numa base de dados para depois serem utilizados (por exemplo pagina WEB).
Depois de umas pesquisas na net, acho que a melhor maneira será por HTTP GET ou POST, preparo no servidor uma php que aceita dados via GET e que depois insere esses dados na base de dados.
Título: Re: Shield Ethernet + Base de Dados
Enviado por: tarquinio em 08 de Fevereiro de 2014, 13:42
Sim se tens acesso ao servidor com PHP isso faz-se bem usando POST (foi exactamente o sistema que usamos no meu caso). Se de der jeito conseguir inserir valores directamente para debug (sem usar o arduino) pode dar-te mais jeito usar o GET. Tambem se muda fácilmente de um para outro (ou dás a hipotese de usar ambos) :)
Título: Re: Shield Ethernet + Base de Dados
Enviado por: CBX em 08 de Fevereiro de 2014, 13:42
Nesse caso, como já tinha dito, o mais fácil é mesmo usar PHP e SQL no servidor, bastam algumas linhas de código php
Título: Re: Shield Ethernet + Base de Dados
Enviado por: FCarvalho5555 em 10 de Fevereiro de 2014, 10:27
A minha duvida em usar GET ou POST é mesmo a segurança, não quero que vejam o que estou a colocar na base de dados e usando o GET isso é impossível :/
POST parece-me melhor ao nível da segurança.

Título: Re: Shield Ethernet + Base de Dados
Enviado por: jm_araujo em 10 de Fevereiro de 2014, 10:41
Vai dar ao mesmo...
Para verem o que estas a meter na base de dados tem de ter alguém a inspecionar o tráfego da tua rede. A menos que uses https, os dados vão bem visíveis seja por GET ou por POST. A diferença de segurança é marginal.

http://stackoverflow.com/questions/198462/is-either-get-or-post-more-secure-than-the-other (http://stackoverflow.com/questions/198462/is-either-get-or-post-more-secure-than-the-other)
Título: Re: Shield Ethernet + Base de Dados
Enviado por: tarquinio em 10 de Fevereiro de 2014, 10:48
Se alguem tiver acesso à stream dos dados, seja post ou seja get é fácil ver a informação. Se usares um programa que te permita ver o tráfego que passa na rede, consegues ter acesso aos dados de qualquer das formas. O get mete os dados junto ao url, o post mete-os pouco depois disso, não se ve quando se olha para o url mas se olhas para a transmissão toda como texto é bastante fácil ver os dados todos.
Título: Re: Shield Ethernet + Base de Dados
Enviado por: CBX em 10 de Fevereiro de 2014, 22:51
Se a transmissão tiver mesmo de ser segura tens de implementar SSH e um arduino não é suficiente para o fazer, aconselho um SOC a correr linux onde já tens tudo implementado de raiz ou então arranjar um router tplink daqueles de 20€ (não me lembro do modelo), instalar openwrt e ligas-lhe arduino por Serial, o arduino trata da recolha e o router do envio cifrado dos dados