Ir ao conteúdo
  • Cadastre-se

rodrigocirilo

Membro Pleno
  • Posts

    651
  • Cadastrado em

  • Última visita

Tudo que rodrigocirilo postou

  1. voce está imprimindo direto a leitura do ADC apos os calculos no LCD..voce poderia tirar medias da leitura assim creio que ajude tambem..
  2. Sim eu achei uma postagem em um blog sobre usar o AmpOp para isso, mas ja falei mais de uma vez aqui, tenho cisma de usar AmpOp haha nao sei porque..bichinhos difíceis de lidar.... Mas assim que chegar os meus módulos vou fazer alguns testes.....enquanto nao chegam vou simular essa saida 4 a 20 mah.. Um detalhe que lembrei agora, os pt100 que vou usar são de 3 ou 4 fios... essa plaquinha parece que é só de 2 fios?? Te enviei uma MP sobre outro assunto, quando puder ler ficarei grato..
  3. Vixi, então não tem como mesmo ligar o PT100 em dois circuitos..imaginei isso. Mas no caso, eu nao sei como seria o padrão de rs232 que a placa comercial estaria apta a receber, digo em relação ao protocolo, como formatar os sinais a enviar.. Esse conversor D/A é interessante, mas será que eu conseguiria usar isso..hehe... sei não viu.... O outro conversor é interessante pois ja me entrega os sinal do PT100 de 0~5V, mas qual a escala total que ele estaria apto a converter, pois sei que os PT100 medem de -200º a 800º não seria uma escala muito extensa para um arduino ler, com um ADC de 16bits.. mas vou investigar sobre ele, neste caso eu poderia usar o sinal 0~5V para ligar no arduino/pic e ao mesmo tempo em outro leitor comercial que leia 0V~5v ?? Obrigado mais uma vez!!
  4. Paulo agradeço os links vou dar uma pesquisada. Os CI´s dedicados que comprei, sugeridos pelo Fervolt vão funcionar, ja pesquisei bastante sobre eles.. Mas, sempre tem um MAS hahaha.... o que preciso fazer é LER o PT100 com o MAX31865 (até aqui ok) mas o sinal (variação de resistência) do PT100 tem que seguir mais a frente para um outro conversor de PT100 (comercial) ler e trabalhar o PID da resistência... o meu projeto é só para ler e exibir a temperatura próximo de onde estiver sendo feita a leitura, o processo principal será controlado por esse conversor comercial.. E é aqui que mora o problema, pois eu pesquisei no forum da adrafruit fabricante do modulo que embarca o MAX31865 e me disseram por lá que não vai ter como o pt100 estar ligado em dois lugares ao mesmo tempo. O que você me diz?? estou cogitando montar uma saida 4~20mah para enviar o sinal do pt100 ja convertido para o leitor comercial.. Vai ser bem complicado esse desafio. agradeço de antemão !! adicionado 1 minuto depois Intrudera, agradeço tambem.... mas vou esperar meu modulos chegarem e ver o que consigo com eles.... pois não sei se estou nesse nivel de prog. haha apesar de me dedicar muito....
  5. @Fervolt Obrigado pela excelente explicação.. Já tinha visto algo sobre este CI, mas como não achei pra comprar aqui, resolvi pedir ajuda. Vou ver se importo algumas peças para teste..e pelo que vi e como você falou ele ja entrega o sinal pronto, então é só exibir por exemplo em um ldc/oled, talvez um pequeno ajuste do que chega..
  6. Olá, caros colegas do CDH. Gostaria de saber se alguém já fez leituras de sensores PT100 2/3 fios com PIC/ARDUINO. Se há uma maneira de ler o sensor diretamente no canal analógico do uC, ou se precisa de algum conversor. Caso necessite de conversor, poderiam indicar qual? um diagrama? Já, usei o LM35 muitas vezes, mas o range de temp que preciso ler ele nao suporta. Agradeço desde já.
  7. Bom dia pessoal, venho aqui pedir a valiosa ajuda de vocês.. Seguinte, tenho uma aplicação C# (servidor) no ponto A e tenho um equipamento que se conectará nesse servidor, que está no ponto B. Haverá um link de RADIO levando a rede local do ponto A para o ponto B, e neste equipamento eu insiro o IP local do servidor EX: 192.168.1.200. até aqui tudo bem funciona. A questão é a seguinte, no ponto B tambem terá uma internet banda larga e ai que entra minha duvida, usando um switch loud balance eu consigo manter esse IP local nesse equipamento e se antena perder o link ele faz o direcionamento pela internet? no ponto A tem um DDNS funcionando, ele loud balance consegue localizar e trata como IP local?? espero ter conseguido explicar .. Att. Rodrigo C.
  8. Obrigado pelas dicas... vou verificar sobre o ccs e esse gravador. teria algum exempo de como setar esse registrador? adicionado 1 minuto depois Sim eu acabei achando 1 post que falava sobre pull-up se estiver setado como entrada...vou fazer uns testes hoje!!
  9. Boa tarde galera do CDH.. seguinte são duas duvidas para resolver o mesmo problema Tenho um equipamento aqui que veio com um pic 16F1823 e preciso alterar o codigo para funcionar de outra maneira, porém minhas duas gravadoras nao suportam esse pic!! nem a versão 4.105 do CCS tem o bendito!! Sobre o supracitado pergunto, tem como incluir esse pic no CCS e tem alguma gravadora que suporta esse pic. Segundo ponto: poderei eu substituir o 16F1823 pelo 16F688, porém como há uma leitura multiplexada de um teclado e não tem resistores de pull_down ou pull_up, acredito que devem estar setados internamente no pic, ok, o 688 tem suporte no port_A para pull_up, então o port_A todo ficaria com pull_up certo? (menos o A3 segundo datasheet) Ocorre que no A5 e A4 tenho base de transistores NPN (BC-337) que são as cargas que vou ativar em determinado ponto do codigo, mas e ai como vou setar esses pinos HIGH se eles estão com pull-up habilitado?? Att. Rodrigo C. edit: Andei pesquisando e pelo que entendi com o port_a com pull-up habilitado, os pinos que eu setar como saida ja não terão mais o pull-up, procede? Li no forum do CCS compiler
  10. @Papibakigrafo você conseguiu salvar o SSID e senha na eeprom do esp? Estive pensando, precisava de uma maneira de inserir o login, senha e IP do esp depois de ja ter carregado o codigo nele. Pra ele ficar configuravel em qualquer lugar, sem precisar do codigo e tal.. Estou pensando na possibilidade de fazer uma plaquinha com ldc e um arduino... conversar com o esp via serial e assim "inserir" esses valores dentro do esp que irá gravar na eeprom. ou sera que tem como fazer com um software qualquer que estabeleça um comunicação serial e usar o proprio conector micro usb do nodemcu?? O que me dizem??
  11. Bom, caso alguem conheça algum circuito/CI pode postar.. Mas eu ja consegui o que queria com o TL431 mesmo...que no caso foi só achar a tensão de disparo com um divisor de tensão..
  12. Olá galera do CDH, vou pedir uma ajuda aqui para vocês. Preciso monitorar uma tensão de uma bateria (com carregador), carregador desligado ficara em torno de 12,50 volts.. porém quando ligar o carregador a tensão irá para 13.30 a 14.00 V e ai deverá ligar uma saida( um rele). Postei aqui porque não quero usar um uC para fazer a leitura acionamento, quero fazer de forma analogica. A um tempo usei um CI o TL431, mas faz tanto tempo que nao lembro como usa-lo.. alguem conhece algum meio fácil de fazer isso?? Desde ja agradeço!!
  13. @Papibakigrafo Não consigo te ajudar em relação a salvar esse tipo de dado na eeprom, mas você podeira me ajudar respondendo quantos endereços o ESP12e (nodmecu) tem disponíveis? e são endereços de 255 (8 bits)? att.
  14. Olá, não pode ser por RF, serial etc... tem que ser pela rede ethernet/wifi. pois deverá mandar as informações para um pc que não vai estar no loccal (porém chegará até no local uma rede ethernet via radio (uma rede local) que levará os dados até o pc de destino.. Esqueça webserver webclient... o esp não vai hospedar nenhuma pagina...só vai ler um botão e enviar o estado. recebendo um dado do servidor aciona uma saida. Os esp´s deverão se conectar ao SERVIDOR que será uma aplicação V C# (nos testes estou simulando com um terminal tcp server. Não sei se seria possivel(creio que sim) mas nao queria usar nada de web/html/get/post etc.. hehe.... Esse ultimo codigo que postei veio no finzinho da tarde.. quebrei um pouco a cabeça mas acho que é o melhor caminho a seguir... pois como falei consegui de maneira meio tosca uma comunicação de duas vias..
  15. Pessoal, voltei hehehe Seguinte, estou usando o nodemcu (ESP8266) na IDE do arduino. Vamos ver se conseguem me ajudar, vou explicar rapidamente: Terei uma aplicação em visual studio c# (ficará para depois) (no caso vamos usar um terminal tcp server pra simular essa aplicação) que irá receber varias conexões de varios nodemcu´s. Esses nodemcus irão enviar dados ao server (aplicação(sem ser solicitado pelo server) ) o server recebe trata etc.. em determinado momento preciso enviar dados do server para algum esp (para fins de teste vamos considerar somente 1 agora) o ESP recebe trata . só isso hehe Andei lendo e testando alguns exemplos de comunicação tcpip sockets (não manjo disso hehe) fiz a aplicacção C# e testei com app no celular e funcionou.. Comprei umas apostilas (muito simples por sinal ) e nela continha um exemplo que testei e funciona com o terminal tccpserver (hercules) apertando o botão envia uma string ao server. segue codigo: #include <ESP8266WiFi.h> const char* ssid = "ID_REDE"; const char* password = "SENHA_REDE"; const char* host = "192.168.1.106"; //IP DO PC QUE ESTÁ INSTALADO O HERCULES #define INP1 14 #define LED 2 void setup() { Serial.begin(9600); // Inicia comunicação Serial em 9600 baud rate pinMode(INP1, INPUT_PULLUP); WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); while(WiFi.status() != WL_CONNECTED) delay(500); Serial.println("test"); } void loop() { WiFiClient client; if(digitalRead(INP1)==0) { if(!client.connect(host, 80)) // porta 80 ja estava no exemplo return; client.print("ENVIADO"); delay(250); } } imagem do que recebe. O que preciso agora é conseguir enviar uma informação do server para o ESP tipo uma string ou um valor uma letra alguma coisa ... achei esse codigo e ele funciona no caminho inverso (envia dados pc ao esp porém ele torna o ESP server e tem que usar a aba tcp client do hercules) alem de agir estranho, ao enviar o dado ele automaticamente desconecta do server. Mas a pergunta é: como juntar esses dois codigo para formar uma comunicação TIPO serial, onde ambos pode enviar e receber normalmente. #include <ESP8266WiFi.h> const char* ssid = "ID_REDE"; //put your SSID of the router to connect with const char* pass = "_SENHA_REDE"; //put your password of the router to connect with int led; String responce; WiFiServer server(80); void setup() { Serial.begin(115200); delay(10); pinMode(2, OUTPUT); digitalWrite(2, 0); Serial.println(); Serial.print("Connecting to............"); Serial.println(ssid); WiFi.begin(ssid, pass); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); server.begin(); Serial.println("Server started....."); Serial.println(WiFi.localIP()); } void loop() { WiFiClient client = server.available(); if (!client) { return; } Serial.println("new client"); while(!client.available()) { delay(1); } String req = client.readStringUntil('\r'); Serial.println(req); client.flush(); if (req.indexOf("on") != -1) { led = 0; responce = "ON"; } else if (req.indexOf("off") != -1) { led = 1; responce = "OFF"; } else { Serial.println("invalid request"); return; } digitalWrite(2, led); client.flush(); client.print(responce); delay(1); Serial.println("Client disonnected"); } Conto com a inteligencia e boa vontade dos colegas... pois estou ficando doido hehe Att. adicionado 22 minutos depois Bom tambem consegui no GITTER um exemplo de codigo que consegui fazer funcionar alguma coisa parecida com o que quero, porém tive que retirar uma parte de dentro de uma função e colocar no void loop. #include <ESP8266WiFi.h> #define LED0 2 // WIFI Module LED //------------------------------------------------------------------------------------ String Message=""; //------------------------------------------------------------------------------------ // Authentication Variables //------------------------------------------------------------------------------------ char* connect_to = "ID_REDE"; char* pass = "SENHA_REDE"; IPAddress qwertyServer(192,168,1,106); WiFiClient qwertyClient; //==================================================================================== void setup() { // Setting The Mode Of Pins --------------------------------------------- pinMode(LED0, OUTPUT); // WIFI OnBoard LED Light digitalWrite(LED0, !LOW); // Turn WiFi LED Off // Print Message Of I/O Setting Progress -------------------------------- //Serial.println("\nI/O Pins Modes Set .... Done"); // Starting To Connect -------------------------------------------------- WiFi.mode(WIFI_STA); // To Avoid Broadcasting An SSID WiFi.begin(connect_to, pass); // The SSID That We Want To Connect To // Printing Message For User That Connetion Is On Process --------------- Serial.println("!--- Connecting To " + WiFi.SSID() + " ---!"); // Setting The Serial Port ---------------------------------------------- Serial.begin(9600); // Computer Communication delay(500); Serial.print("\n"); // WiFi Connectivity ---------------------------------------------------- CheckConnectivity(); // Checking For Connection } //==================================================================================== void loop() { if(WiFi.status() != WL_CONNECTED) { Serial.println("\nOops! Connection lost. Trying to reconnect " + String(WiFi.SSID())); Serial.println(""); CheckConnectivity(); } else if(qwertyClient.available() > 0) { ReadMessage(); Serial.print(Message); Serial.print(); qwertyClient.flush(); } if(qwertyClient.connect(qwertyServer, 23)) { delay(250); Serial.print("status\n"); Serial.println ("Connected"); qwertyClient.println ("teste"); } } //==================================================================================== void ReadMessage() { Message = ""; Message = qwertyClient.readStringUntil('\r'); } //==================================================================================== void CheckConnectivity() { while(WiFi.status() != WL_CONNECTED) { for(int i=0; i < 2; i++) { digitalWrite(LED0, !HIGH); delay(50); digitalWrite(LED0, !LOW); delay(550); Serial.print("."); } Serial.println(""); } // Stop Blinking To Indicate Connected ---------------------------------- digitalWrite(LED0, LOW); Serial.println("\n!-- Client Device Connected --!"); Serial.print("\n\n"); // Printing IP Address -------------------------------------------------- Serial.println("Connected To : " + String(WiFi.SSID())); Serial.println("Signal Strenght : " + String(WiFi.RSSI()) + " dBm"); Serial.print ("Server IP Address : "); Serial.println(qwertyServer); Serial.print ("Device IP Address : "); Serial.println(WiFi.localIP()); // Conecting The Device As A Client ------------------------------------- ClientRequest(); } //==================================================================================== void ClientRequest() { // First Make Sure You Got Disconnected qwertyClient.stop(); // If Sucessfully Connected Send Connection Message if(qwertyClient.connect(qwertyServer, 23))///copiei isso { ///copiei isso delay(250); ///copiei isso Serial.print("status\n"); ///copiei isso Serial.println ("Connected"); ///copiei isso qwertyClient.println ("teste1"); ///copiei isso } ///copiei isso e colei la no loop infinito ai } /// começou a trafegar dados Abrindo o serial monitor fica printando varias coisas hehe, mas também envia dado para o terminal server, e de la se eu escrevo algo no send também envia...vou tentar tratar isso amanha
  16. Ok, estou esperando algumas apostilas chegarem.. quando tiver algo pronto e se enroscar ai dou mais detalhes.. mas suas dicas foram muito boas.. vou deixar anotado aqui..
  17. Luciano agradeço a atenção e o codigo exemplo.. porém não quero comunicação serial, quero que o nodemcu se conecte na rede wifi e um pc na mesma rede(ou não) contendo o supervisório irá se comunicar via tcpip. Eu achei um video no youtube de um exemplo de um server e client na mesma solution.. e fiz algumas adaptações, consegui fazer comunicar usando um app (android) que faz o papel do client.. Enfim.. vou comprar umas apostilas dedicadas ao assunto e ver se me ajuda.. adicionado 3 minutos depois Olá Vinicius, na verdade tenho o codigo pronto para comunicar por serial(que é o que uso atualmente) mas ainda não consegui implementar a parte de TCPIP no C#. Apesar que, conforme respondi ao Luciano, vi um video que ajudou a ter um norte para fazer uns testes.. No caso, o supervisório será o server, pois vários client´s (ESP´s) irão se conectar a ele. e sim é indicando um IP e PORTA.
  18. essoal, boa tarde.. Gostaria de saber se alguma alma caridosa aqui poderia me ajudar hehe.. Queria programar o NodeMcu na IDE do arduino.. e conversar via socktes (acho que é isso) com um supervisório feito em visual studio C#... algo simples para fins de estudo.. o ESP como cliente e o supervisório como server.. dai ao ligar o esp se conectaria no IP/Porta do PC e falaria com o software.. tipo enviar um comando do soft. para acender um led, e o esp responder com uma mensagem de ON ou OFF.. Alguem tem um exemplo de uma aplicação dessas?? Att. Rodrigo
  19. @Isadora Ferraz Muito obrigado pelas dicas... Se você que conhece muito mais do que eu não gosta dessa alternativa, imagina se eu vou usar rsrsrs.. quem saber em um futuro distante.
  20. porque, meio estranho?? terá um teclado de 0 a 9 dígitos onde será cadastrado todas as senhas validas... no uso diário, será digitada as senhas e para saber se é valida ou não terá de consultar na memória, se ela estiver lá, será válida.. Putz.. como nao pensei nisso antes?? como sou lento rsrsrs transfiro tudo da eeprom para ram no start do mcu e pronto... Que bom... Não entendi essa parte, no caso as senhas terá 4 digitos então formarão um numero de 0000 a 9999, no caso não consigo gravar em um único endereço o valor, pois não é de 8 bits (certo??) por isso preciso separar o numero em 2 de 2 dígitos ai sempre vou ter numeros abaixo de 255 para gravar.. Então como 8 bits seriam suficiente para senhas??
  21. Sim se eu indicar exatamente o endereço concordo, mas no meu caso preciso ler todos os endereços para checar se a senha digitada está na memória. No caso se for a memória EEPROM interna do PIC não levará este tempo certo??
  22. Opa..obrigado amigão, vou dar uma olhada assim que puder.. Essa comunicação é parecida com a rs232? Tipo pra enviar putc(dado). Pra receber dado=getc() ??? Abrs
  23. Digo 5 segundos para fazer 1023 consultas a memória externa, sendo que cada leitura de endereço leva 5ms !! nao seria isso??

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...