Ir para conteúdo
  • Cadastre-se
  • Posts Por Dia

    0
  • Posts

    5
  • Registrado em

  • Última visita

  • Créditos EBR

    1 [ Doar ]

Sobre icatorze

  • Data de Nascimento 27/07/1977

Informação Pessoal

  • Sexo
    Male
  • Localidade
    Jaraguá do Sul/ SC / Brasil

Conquistas de icatorze

Novato

Novato (1/14)

  • Reagindo bem Rare
  • Primeira semana concluída
  • Um mês depois
  • Um ano de EBR

Escudos Recentes

0

Joinhas

  1. Com este pequeno projeto é possível controlar 2 pequenos relés através de um modem discado ( não sei quantos ainda tem um destes, eu ainda tinha um do tempo da discadona ). Meu problema era com o modem mais moderno: o modem ADSL, durante as viagens de trabalho este modem travava e eu perdia o acesso aos servidores no escritório, quando tinha alguém no escritório era só ligar pedindo pro coitado desligar e ligar o modem, mas no fim de semana e fora do expediente, isso se tornava um problema, pois alguém tinha que se deslocar pro centro só pra resetar o modem Para resolver este problema, projetei uma placa com um ATMEGA8, compatível com o Arduino, um MAX232 (conversor RS232 para TTL), 2 mini-relés e alguns componentes passivos, conforme o esquemático anexo. No Arduino programei o código a seguir, ele coloca o modem em espera de 4 toques para atender, ao atender a ligação ele espera os tons de discagem: digitando 1 o relé 1 fica atracado por alguns instante, digitando 2 o relé 2 é acionado, e digitando 0 a ligação é terminada e o Modemduino volta para espera. No relé 1 eu liguei a alimentação do modem ADSL, assim, sempre que eu perdia a conexão com os servidores, eu ligava para o telefone do escritório e comandava o resete. Neste link está o esquemático em PDF: https://icatorze.files.wordpress.com/2015/11/modemduino.pdf [code] #include <avr/wdt.h> #include <avr/interrupt.h> char inSerial[40]; int i=0; int ledPin = 8; int rele1 = 2; int rele2 = 3; unsigned long agora; unsigned long antes; ISR(TIMER1_COMPA_vect) { setaLed(false); setaReles(false,false); TCCR1B = (0 << CS10) | (0 << CS11) | (0 << CS12); } void setup() { wdt_disable(); DDRB = 0x01; DDRD |= (1 << 2) | (1 << 3); TIMSK |= (1 << OCIE1A); TCCR1A = 0; TCCR1B = 0; TCNT1 = 0; OCR1A = 30000; interrupts(); Serial.begin(57600); setaLed(true); Serial.println(“ATH0”); delay(100); readresponse(); setaLed(false); delay(5000); initvoicemodem(); setaLed(true); wdt_enable(WDTO_2S); antes = millis(); } void loop() { readresponse(); agora = millis(); if ((agora-antes)>60000) { setaLed(false); wdt_enable(WDTO_15MS); delay(3000); } } void setaLed(boolean x){ if (x) PORTB = 0x01; else PORTB = 0x00; } void setaReles(boolean rl1,boolean rl2){ if (rl1) PORTD |= (1 << 2); //seta rl1 else PORTD &= ~(1 << 2); if (rl2) PORTD |= (1 << 3); //seta rl2 else PORTD &= ~(1 << 3); } void readresponse(){ i=0; char number; boolean desliga = false; wdt_reset(); if (Serial.available() > 0) { while (Serial.available() > 0) { inSerial=(Serial.read()); delay(10); i++; } inSerial=’\0′; for (int j=0;j<i;+) { if (inSerial[j]==16) { //DLE number = inSerial[j+1]; if ((number >=’0′) && (number <= ‘9’)) { setaLed(true); if(number==’1′) { setaReles(true,false); TCCR1B |= (1 << WGM12)| (0 << CS10) | (0 << CS11) | (1 << CS12); } if(number==’2′) { setaReles(false,true); TCCR1B |= (1 << WGM12)| (0 << CS10) | (0 << CS11) | (1 << CS12); } if(number==’0′) { wdt_enable(WDTO_15MS); } break; } } } inSerial[0]=’\0′; } } void initvoicemodem() { Serial.println(“AT+FCLASS=8”); delay(100); readresponse(); Serial.println(“ATI6”); delay(100); readresponse(); Serial.println(“ATS0=4”); delay(100); readresponse(); Serial.println(“AT&D0”); delay(100); readresponse(); Serial.println(“ATT”); delay(100); readresponse(); delay(1000); }[/code]
  2. Gostaria de compartilhar esta dica, um pendrive que roda o Debian Linux, permite vc ter todo o poder do Linux direto da usb sem precisar instalar no HD Eu uso o Debian Live para acessar computadores com diversos tipo de problema, fazer backup de arquivo em sistemas com virus, formatar particoes, e muito mais. Cheguei a rodar um antigo notebook por meses, apenas com o pendrive, enquanto procurava um HD IDE de 3.5' pra ele. Neste momento, estou fazendo o backup de arquivos de uma particao NTFS de um windows com problemas, para um HD externo. O download da imagem ISO do Debian Live pode ser feito em https://www.debian.org/CD/live/ via torrent ou via http direto. Para gravar no pendrive em sistemas Linux eu uso o comando nativo: dd. Ja para o windows eh necessario instalar o "ISO to USB", disponivel em http://exame.abril.com.br/tecnologia/aplicativos/windows/iso-to-usb/
  3. Eh um pouco frustante mesmo quando comecamos num projeto e treco ja sai empacado!! Voce eh novo nos parangole da Eletronica e ja quis partir direto pra robotica, ousado vc!! A linguagem do arduino eh C++, nao eh exatamente a mais simples, mas as funcoes do arduino deixam as coisas mais amigaveis. Recomendo comecar com o "hello world", depois piscar um leds e dai partir pra robotica, testas as funcoes em partes e usar prints ajuda no debug. E te digo, cuidado, pq vai viciar! eletronica pega na veia!
  4. 1- Google 2- Engenheiro Eletronico 3- Preciso reflash da bios de um netbook brickado 4- Tenho 20 anos de experiencia em manutencao de equipamentos eletronicos.

SOBRE O ELETRÔNICABR

EletrônicaBR é o melhor fórum técnico online, temos o maior e mais atualizado acervo de Esquemas, Bios e Firmwares da internet. Através de nosso sistema de créditos, usuários participativos têm acesso totalmente gratuito. Os melhores técnicos do mundo estão aqui!
Técnico sem o EletrônicaBR não é um técnico completo! Leia Mais...
×
×
  • Criar Novo...