Publicado em Deixe um comentário

Medidor Temperatura, Servo Motor.

Dois outros tutoriais que escrevi mostram o básico ( Arduino 101 ) e como criar um data logger realmente básico ( Arduino Datalogger – simples ). Este tutorial irá mostrar como conectar servomotores e usar o sensor de temperatura para movê-lo!

A premissa é que, muitas vezes, você quer responder a alguma entrada e fazer algo acontecer. A maioria dos tutoriais mostra como acender as luzes ou emitir um som. Aqui, quero mostrar como você pode usar um simples servomotor para abrir algo (como uma janela) em proporção à temperatura ambiente.

Vamos começar!Adicionar dicaPerguntarComenteBaixar

Etapa 1: Adicionando os Componentes

Imagem de adicionar os componentes
Imagem de adicionar os componentes

Para este tutorial, você precisará de:

  • Um arduino
  • Uma tábua de pão pequena
  • Um servo motor
  • Um LED
  • um resistor, ajustado para 150Ω
  • um sensor de temperatura

Eu uso o Tinkercad para todos os tutoriais até eu entrar em classes ou bibliotecas complexas, então vá até lá e ganhe uma conta! Para adicionar os componentes, você precisará abrir o componente Componentes e pesquisar / rolar, certificando-se de ter selecionado “todos” em vez de “básico” no seletor suspenso de componentes.

Se você não tiver certeza de como usá-los, ou se a qualquer momento se perder, volte ao Passo 1 e use o tutorial 101 e datalogger para começar. Eles são um bom ponto de partida.

Vamos ligar isso.Adicionar dicaPerguntarComenteBaixar

Etapa 2: conectando a fiação

Imagem de Fiação Acima
Imagem de Fiação Acima
Imagem de Fiação Acima
Imagem de Fiação Acima

Um lembrete de que todas as colunas em uma placa de montagem estão conectadas, mas há uma lacuna no meio que desconecta a matriz superior da parte inferior.

  1. Use a primeira imagem como guia sobre como conectar os fios 5v e GND do Arduino à breadboard. Conecte as portas 5V e GND no Arduino à breadboard. Essencialmente, esses dois trilhos de energia fornecem um número maior de portas para acessar a energia ao criar protótipos.
  2. Conecte a parte inferior da placa ao topo. Certifique-se de combinar GND / Negativo (preto) para 5v / Positivo (vermelho).
  3. Certifique-se de que todos os componentes estejam na metade inferior da placa de montagem, exceto o servo, e que eles estão cruzando as colunas. Isso é importante, então não cruzamos nenhum fio.
    1. Adicione o LED (imagem 2).
    2. Use o resistor e conecte a um dos pinos (usei o ânodo). 
      Se você usou o ânodo (e é mais fácil seguir o diagrama de fiação na imagem), conecte o cátodo (negativo) à linha GND na breadboard. 

      Dica rápida! Se você passar o mouse sobre o final dos pinos em um componente, ele informará qual é o ânodo e o catodo, ou sinal etc.
    3. Ligue o sensor de temperatura. Certifique-se de que a perna esquerda vá para 5v. A perna direita vai para o GND. A perna do meio deve estar conectada ao pino A0. 
      Este é um dispositivo analógico e, como tal, precisa de um pino analógico. Poderíamos usar digital e dizer para receber analógico, mas temos pinos suficientes.
    4. Para o servo, temos três fios. Estes incluem 5v, GND (terra) e um fio de sinal.
      1. Conecte o fio marrom no servo ao GND na breadboard.
      2. Conecte o fio vermelho no servo a um pino de 5v na breadboard.
      3. Conecte o fio laranja ao pino digital 3 no Arduino.

Se não tiver certeza, verifique as imagens acima!Adicionar dicaPerguntarComenteBaixar

Etapa 3: o código

Imagem do Código

Neste exemplo, estou supondo que tenho uma casa em um clima quente. Eu gostaria de abrir as janelas quando ficar quente para que eu possa maximizar o fluxo de ar, porque eu tenho um condensador de ar que requer pressão positiva maciça na casa para resfriar o local. Então, vamos controlar automaticamente as janelas para maximizar o fluxo de ar.

Vamos entrar no código bom e rápido!

#include <servo.h>

Esta é a primeira vez (nesta série) que usamos uma biblioteca. Uma biblioteca é como uma caixa com uma série de pastas. Em cada pasta há folhas de papel, e cada uma delas tem instruções especiais sobre como usar dispositivos específicos. Você pode “incluir” essas pastas em seu código, o que torna mais rápido escrever seu código!No passado, escrevi plugins para webapps e outros softwares que são distribuídos gratuitamente. É uma ótima maneira de retribuir à comunidade! Depois de ter desenvolvido uma boa base de habilidades em código, é uma oportunidade válida para se envolver em código aberto.

Nós usamos a instrução #include para dizer ao Arduino que ele irá usar a biblioteca. Se é uma biblioteca global (algo que você instalou com o gerenciador de pacotes ou embutido no Arduino, como math.h), então você irá colocá-lo entre os símbolos <>.

Mais tarde, você aprenderá a escrever o seu próprio e se você armazená-los na pasta do projeto, você colocará o nome do arquivo entre aspas duplas, “assim”. Isso porque o compilador (o programa que converte o código de algo que podemos ler para algo que o Arduino pode ler) precisa referenciar o arquivo na pasta, não no escopo global.

O próximo bloco de código deve parecer bastante familiar, então vamos apenas olhar para os novos recursos.

// Definir constantes
#define temperatura A0
#define ledIndicator 2
#define servoPin 3
// Inicializa a classe servo
Servo MainServo;

Então, nós definimos as duas constantes que vamos usar. Estes são os pinos conectados aos sensores ou saídas. Nós também definimos o pino servo.

Você pode ver a linha Servo mainServo – é onde instanciamos a classe Servo que instalamos com a biblioteca. Isto é como ligar a máquina de café para aquecê-lo (eu amocafé …). Está pronto para ir! Neste caso, mainServo é o nome que demos a esta nova instanciação. Isso é importante, porque com as classes, eu poderia ter 1, 2 ou muitos servos rodando ao mesmo tempo! É por isso que usamos classes, porque eles são pequenos pacotes por conta própria, podemos usar muitas vezes e fazer muitas coisas com eles.

// Definir variáveis
posição int = 0;
int previousPosition;
void setup () {
	pinMode (temperatura, INPUT);
	pinMode (ledIndicator, OUTPUT);
	// Diz ao mainServo qual pino ele está conectado
	mainServo.attach (servoPin);
	Serial.begin (9600);
}

Este bloco de código acima é bastante consistente com tudo o que fizemos. A única nota importante a fazer é a chamada de função mainServo.attach () . Aqui, dissemos à mainServo para executar uma função chamada attach () e dentro das chaves redondas, indicamos o pino ao qual estamos anexando o servo. Isso ajuda o servo a saber para onde enviar os sinais mais tarde.Se você está se perguntando como sabemos quais chamadas de função fazer dentro de nossa biblioteca, todas as bibliotecas têm documentação. Esta documentação informa quais funções existem dentro da biblioteca e como você pode usá-las (por exemplo, quais parâmetros cada função executa).

void loop () {
}

O próximo bloco de código vai dentro do código loop () .

// Análise de temperatura
int tempReading = analogRead (temperatura);
// Se estiver usando uma entrada de 5v
tensão de flutuação = tempReading * 5.0;
// Dividido por 1024
voltagem / = 1024,0;
// Convertendo de 10mv por grau
float tempC = (voltagem - 0,5) * 100;
// Isso mapeia a temperatura para graus abertos para a aba
int position = map (tempC, 10, 50, 0, 180); <br>

Neste bloco, estamos completando a análise de temperatura (vimos isso no tutorial do registrador de dados). Essencialmente, estamos pegando o sinal analógico enviado pelo sensor de temperatura e convertendo-o em graus.

A função map () nos permite converter isso em algo utilizável. Em vez de executar matemáticas complexas que precisariam de muitas linhas, nós as convertemos assim:

map (variableValue, fromLow, deHigh, toLow, toHigh);

O que isto faz é pegar o valor da variável que temos (como graus) e converter o valor mínimo possível e o valor máximo possível em pode nos dar (neste caso, eu defino o mínimo para 10 graus e o máximo para 50 graus . Estes são os valores mínimo e máximo que estou esperando do sensor de temp, e também sei que em 10degrees, gostaria que o windows completamente fechado para manter o calor dentro! Enquanto em 50degrees, eu quero que eles completamente abertos para o fluxo de ar máximo!

if (previousPosition! = position) {
	Serial.print ("Nova posição:");
	Serial.println (posição);
	mainServo.write (posição);
	digitalWrite (ledIndicator, HIGH);
	// Espere o servo se mover
	atraso (2000);
}
// Desligue a luz indicadora
digitalWrite (ledIndicator, LOW);
// set previousPosition por isso, se não temos que mudar, não disparamos o servo
previousPosition = posição;

Neste bloco, decidi apenas permitir que o servo disparasse quando a posição realmente mudasse. Isso não deve ser assim tão frequentemente, mas pode ser. Nesse caso, talvez eu precise fazer algumas alterações para que o código só permita o movimento quando a alteração da temperatura for superior a 5 graus, caso contrário, poderá estar aparando constantemente a janela, o que pode danificar o servo. Enfim, um problema para outro dia!

Então, se a posição mudar, então nós imprimiremos a nova posição para o Serial e então, usando a chamada da função mainServo.write () , passando a nova posição, o servo muda de posição. Para alertar o usuário de que algo está acontecendo, ligo um LED e aguardo 2 segundos para o servo se mover. As duas últimas linhas desligam o LED e certificam-se de que a previousPosition está armazenada para que possamos verificar o próximo loop.

Publicado em Deixe um comentário

GERADOR EÓLICO COM ALTERNADOR DE CARRO

Há muitas formas de fazer um gerador eólico, falaremos aqui do alternador de carro, um alternador de carro faz a função de carregar a bateria.
Quando ligado o carro, dentro do alternador, é liberado pela bateria, uma energia que faz uma excitação no rotor, para vira uma imã com polo norte e sul, e nesse momento ele é girado passando pelo estator, que são umas bobinas de cobre, fazendo gerar energia para carrega a bateria do carro, assim que funciona o alternador do carro, ele consome 2 amperes da bateria, quando ligado o carro.
Já para se fazer um gerador eólico com alternador, vai ter que fazer uma mudança nele, vamos acrescentar nele imãs de neodímio.
O imã ideal de neodímio é o N52, que é encontrado nos Aerogerador como da Ista Breeze, é o mas recomenda para o gerador eólico.

Peça com imãs N52 do Ista Brezze
Gerador eólico
Rotor do alternador

Aqui no rotor onde colocaremos os imãs, com polo norte e sul, um imã inverso do outro, como se eles expelisse, com uma furadeira fazemos os furos do tamanho do imã, quanto maior o imã melhor, o imã deve ficar bem rente com os polo do rotor, para não relar no estator.

Rotor com os imãs
gerador eólico com alternador de carro
Pronto, esta feito alteração necessário para o alternador do carro vira um gerador eólico, quando o rotor é rodado pelo o vento, é criado uma energia por causa dos imãs, sem precisa de uma excitação da bateria para mesma.
Montemos o alternador de volta do jeito original, e agora preparamos as hélices para nosso brinquedinho começar gerar energia para carregar a bateria.
Video de como fazer uma hélices vertical
Para melhorar o desempenho do nosso gerador eólico com alternador de carro, colocar uma polia para aumentar a rotação, vai ajudar muito a obter energia com pouco vento.
Outro detalhe que deve ser analisado, é o tamanho das hélices, quanto maior as hélices do nosso gerador eólico, mas força ele vai ter.
Vejamos um exemplo aqui
gerador eolico com alternador de carro
Como uma marcha bicicleta colocada na maior coroa, aumentando a velocidade com poucas rotação, há outras formas de também ser utilizado nosso gerador eólico com alternador de carro, na própria bicicleta ele pode ser acoplado, ou em bicicleta ergométrica.
Também em queda d’água podemos utilizar nosso gerador eólico com alternador, bom as idéias e criatividades são imensas para se usar o alternador de carro como energia eólica.
energia eólica
CLIQUE AQUI E APRENDA FAZER UM GERADOR EÓLICO DE 1000 WATTS

Atualizado!
Segredo revelado, como fazer o alternador do carro de forma certa, virar um gerador eólico, muitas pessoas faziam, e não tinha resultados, gerava ai 2v volts no máximo, sendo o necessário 12 a 14v para carregar uma bateria.
O video a seguir, explica de forma correto a fazer gerador eólico com alternador de carro, muitas erravam com os imãs, o tamanho ideal e peso…
Certa é que o gerador eólico com alternador, não fique muito leve ao virar, quanto mais pesado o ima, mas ele vai gerar energia.
A 150 rpm, vai gerar ai 200w, a 300 rpm 400w, e assim por diante, quantos mas amperes o alternador fornecer melhor sera para fazer seu gerador eólico com alternador.
Um alternador de 80 amperes vai gerar mais energia com menos rotação comparando um alternador de 35 amperes.
Bom, chegamos ao fim, se gostou, compartilhe nas redes sociais para outras pessoas terem acesso a essas informações, deixe sua opinião em baixo.
Autor: Angelo Augusto Gravena.
[Fonte]
Publicado em Deixe um comentário

Automação residencial

Programando o ESP8266 usando o Arduino IDE

 Sozinho ESP8266

Este exemplo é uma versão independente e é baseado no requisito da Internet of Things Platform WEBFLY. Stand Alone significa que o ESP8266 funcionará sem o uso de qualquer micro controlador extra conectado a ele.

O que fazer primeiro

  1. Registre-se para uma conta em www.iot-ph.com e confirme em seu email.
  2. Adicione um novo dispositivo e copie o deviceid gerado, o deviceid será usado ao carregar o código no seu ESP8266
  3. Adicione um widget, se desejar controlar, adicione SWITCH ou KNOB Widget, se quiser monitorar seus sensores, adicione DATA ou GRAPH Widget.
  4. Depois de adicionar um novo dispositivo, podemos começar a fazer upload de código para ele.

 

O que precisamos

  1.  Arduino IDE versão 1.6.9 ou superior
  2.  Instalar o painel ESP8266
  3. No Arduino IDE, vá para Tools / Board e selecione Board Manager.
  4. No gerenciador de placa, digite ESP8266 e instale esp8266 pelo verte comunitário ESP8266. 2.3.0 ou o mais tardar. Ele irá baixar automaticamente os drivers e amostras.
  5.   Instale o driver DHT ao usar o sensor DHT para ESP8266 do github.
  6. Conjunto de códigos de inicialização para usar.

 

Defina as configurações do Arduino IDE para corresponder ao ESP8266 que você está usando.

 

  1. Na guia Ferramentas, em Quadro, selecione ESP8266 genérico.
  2. Se você não tem ESP8266 genérico, clique em Boards Manager e instale o ESP8266 na parte inferior.
  3. Defina o modo de flash para “QIO”
  4. Defina a frequência do flash para 40 ou 80 MGhz
  5. Defina a freqüência da CPU para 80 ou 160, dependendo do ESP8266 que você está usando
  6. Defina o Tamanho do Flash para 512 KB ou 4 MB, dependendo do ESP8266 que você está usando. Se você não sabe o valor, defina-o como 512KB como valor seguro
  7. Definir velocidade de upload para 51200
  8. Definir o programador para USBasp ou esptool

  Conecte o programador ESP8266 e USB-to-TTL

 (funcionará em qualquer versão ESP8266).

 

Qualquer ESP8266 Programador USB para TTL
GND GND
VCC 3,3 volts
RXD TXD
TXD RXD
GPIO0 GND

 

 

 

Conecte o programador USB para TTL no seu computador e defina o comportamento adequado.

Copie, edite e envie o código, clique no botão Upload no Arduino IDE.

(Eu vou estar adicionando mais exemplos)

  1.  ESP8266 como Internet Switch – Controle o seu ESP8266 em qualquer lugar do mundo.
  2. Sensor ESP8266 e DHT – Monitore a temperatura e a umidade em qualquer lugar
  3. ESP8266 e PWM – Controlando a Intensidade da Luz usando a Modulação de Largura de Pulso
  • Edite o WIFI_SSID
  • Edite a WIFI_PASSWORD
  • Cole o deviceid do servidor ao adicionar o dispositivo em (www.iot-ph.com)
  • Pronto para enviar o código.
  •  Uma vez que o botão Upload é pressionado, o Arduino IDE irá compilar o código para garantir que não haja erros. Se houver um erro, tente verificar ou editar o código.
  • O código de compilação é bem-sucedido quando ele começa a exibir um número de pontos vermelhos e mostra sua porcentagem de upload. 33%, 67% e finalmente 100%
  • Você saberá se carregou o código com sucesso quando está 100%

 

Modo de Corrida.

 

  • Desconecte o programador USB para TTL do seu computador e desconecte oGPIO0 do GND
  • Reconecte o USB-to-TTL ao seu computador para ver se funciona
  • Clique no Monitor Serial para ver se o código funciona (defina a taxa de transmissão em 115200).
Qualquer ESP8266versão Programador USB para TTL
GND GND
VCC 3,3 volts
RXD TXD
TXD RXD

 

Abra o monitor serial e selecione 115200 baudrate

Aqui está o vídeo para fazer o upload do código usando o Arduino IDE

 

[Fonte]

Publicado em Deixe um comentário

Como usar o módulo GPS VK2828U7G5LF

Módulo GPS VK2828U7G5LF e Arduino

Na imagem acima mostramos o teste do módulo com um Arduino Uno e um display LCD 16×2 I2C.

O módulo GPS VK2828U7G5LF

O módulo GPS VK2828U7G5LF pesa apenas 14 gramas e se caracteriza por um baixo consumo de corrente (50mA/Hora) e tamanho reduzido, sendo indicado para utilização em projetos compactos.
Na imagem abaixo temos a pinagem do módulo,  que não vem com uma barra de pinos soldada. Ao invés disso, temos um conector com 6 fios, o que também facilita na hora de embutir este GPS no seu projeto:
Pinagem módulo GPS VK2828U7G5LF
Contando com antena na própria placa, a alimentação é feita com tensões entre 3.3 e 5VDC, mas atenção ao nível de sinal do módulo, que é de 3.3V. Em ligações com placas como Arduino Uno e Mega, por exemplo, isso vai exigir a utilização de um conversor de nível lógico, como o que vamos usar neste post.
A comunicação do módulo GPS VK2828U7G5LF com o microcontrolador é feita pela interface serial (pinos RXTX). O pino ENABLE serve para habilitar ou desabilitar o GPS (nível alto e baixo, respectivamente), e o pino PPS (B) é o Pulse Per Second, utilizado para sincronização do sinal.
GPS - Posicionamento
No módulo temos ainda os leds Power (vermelho, no lado esquerdo) que indica que o mesmo está energizado, e o led PPS (verde) na parte da frente e também na parte posterior, que pisca quando o módulo realizou a comunicação com os satélites GPS e adquiriu posicionamento.

Conexão módulo GPS com Arduino

Na conexão do módulo com a placa Arduino, vamos conectar os pinos RX e TX nas portas 4 e 3 respectivamente para estabelecer a comunicação entre o GPS e o microcontrolador. Como mencionei anteriormente, vamos usar um conversor de nível lógico entre os componentes, para converter o sinal de 3.3V em 5V e vice-versa.
Circuito GPS Arduino e Display LCD 16x2 I2C
Os dados serão mostrados em um display LCD 16×2 com adaptador I2C e backligh azul, mas também serão enviados para o Serial Monitor, se você preferir esse método de visualização. No circuito não vamos usar os pinos Enable e PPS (B), que permanecem desconectados.

Programa

O programa abaixo usa a biblioteca TinyGPS++ (download), usada anteriormente no post Como usar o módulo GPS GY-NEO6MV2, que funciona de maneira semelhante a este módulo que estamos experimentando agora.
Você também vai precisar da biblioteca LiquidCrystal I2C, que você pode instalar a partir da IDE do Arduino, no menu Sketch -> Incluir Biblioteca -> Gerenciar Bibliotecas. Procure por liquidcrystal_i2c e clique em instalar, conforme a imagem abaixo:
Instalação biblioteca LiquidCrystal I2C IDE Arduino
Carregue o programa abaixo no Arduino, alterando o endereço na linha 19 (0x3B) para o endereço I2C do display I2C que você estiver utilizando. Se não souber, utilize o I2C scanner para descobrir o endereço do seu display:
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
//Programa: Modulo GPS VK2828U7G5LF com Arduino
//Autor: Arduino e Cia
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
#include <LiquidCrystal_I2C.h>
//Pinos utilizados para conexao do modulo GPS
static const int RXPin = 4, TXPin = 3;
//Objeto TinyGPS++
TinyGPSPlus gps;
//Conexao serial do modulo GPS
SoftwareSerial Serial_GPS(RXPin, TXPin);
//Inicializa o display no endereco 0x3B
//e define o numero de colunas e linhas do display
LiquidCrystal_I2C lcd(0x3B, 16, 2);
void setup()
{
  //Baud rate Arduino
  Serial.begin(115200);
  //Baud rate Modulo GPS
  Serial_GPS.begin(9600);
  //Mostra informacoes iniciais no serial monitor
  Serial.println(F("Modulo GPS VK2828U7G5LF "));
  Serial.print(F("Biblioteca TinyGPS++ v. "));
  Serial.println(TinyGPSPlus::libraryVersion());
  Serial.println();
  //Inicializa o display LCD I2C
  lcd.init();
  lcd.backlight();
  //Informacoes iniciais no display
  lcd.setCursor(0, 0);
  lcd.print("Lat: ");
  lcd.setCursor(0, 1);
  lcd.print("Lon: ");
}
void loop()
{
  //Conexao com modulo GPS
  while (Serial_GPS.available() > 0)
    if (gps.encode(Serial_GPS.read()))
    {
      displayInfo();
    }
  if (millis() > 5000 && gps.charsProcessed() < 10)
  {
    Serial.println(F("GPS nao detectado! Verifique as conexoes..."));
    while (true);
  }
}
void displayInfo()
{
  //Mostra informacoes no Serial Monitor e no display LCD
  Serial.print(F("Coordenadas (lat/long): "));
  if (gps.location.isValid())
  {
    Serial.print(gps.location.lat(), 6); //latitude
    lcd.setCursor(5, 0);
    lcd.print(gps.location.lat(), 6);
    Serial.print(F(","));
    Serial.print(gps.location.lng(), 6); //longitude
    lcd.setCursor(5, 1);
    lcd.print(gps.location.lng(), 6);
  }
  else
  {
    Serial.print(F("INVALID"));
  }
  Serial.print(F("  Data/Hora: "));
  if (gps.date.isValid())
  {
    Serial.print(gps.date.day()); //dia
    Serial.print(F("/"));
    Serial.print(gps.date.month()); //mes
    Serial.print(F("/"));
    Serial.print(gps.date.year()); //ano
  }
  else
  {
    Serial.print(F("INVALID"));
  }
  Serial.print(F(" "));
  if (gps.time.isValid())
  {
    if (gps.time.hour() < 10) Serial.print(F("0"));
    Serial.print(gps.time.hour()); //hora
    Serial.print(F(":"));
    if (gps.time.minute() < 10) Serial.print(F("0"));
    Serial.print(gps.time.minute()); //minuto
    Serial.print(F(":"));
    if (gps.time.second() < 10) Serial.print(F("0"));
    Serial.print(gps.time.second()); //segundo
    Serial.print(F("."));
    if (gps.time.centisecond() < 10) Serial.print(F("0"));
    Serial.print(gps.time.centisecond());
  }
  else
  {
    Serial.print(F("INVALID"));
  }
  Serial.println();
}
O módulo GPS VK2828U7G5LF pode demorar alguns minutos para detectar os satélites de posicionamento. Depois disso, os dados serão mostrados no display LCD e também no serial monitor.
[Fonte]  https://www.arduinoecia.com.br/2018/08/modulo-gps-vk2828u7g5lf-arduino.html
Publicado em Deixe um comentário

GERADOR DE SINAL DDS

ARDUINO + AD9850 30MHZ GERADOR DE SINAL DDS EM 12 $

Um gerador de sinal de precessão é muito fácil e acessível fazer usando um sintetizador de arduino e dds (ad9850). O primeiro menor gerador portátil de sinal do mundo.
Você pode gerar um gerador de sinal de freqüência decente de 0 a 30 MHZ apenas em 12 $. Se você é pro overclocker então 40MHZ no mesmo preço. AD9850 funciona em dds (síntese digital direta) que pode gerar formas de onda analógicas com entrada digital, aqui eu usei arduino pro mini para controlar placa dds e Hitachi hd 44780 display lcd (16 × 2 lcd) para exibir a freqüência atual e chage etapas.
Este gerador de sinal funciona em USB 5V e consome 270 ma max! Então você pode instalar a bateria dentro dela e torná-lo sistema autônomo, se quiser.
Seu grande projeto para iniciantes e lhe dará muita satisfação e também lhe poupará centenas de dólares!
Você vai precisar de gerador de frequência se você é um cara de rádio amador ou amador ou profissional de eletrônica.
Anúncio da GOL Linhas Aéreas

Arrume suas Malas Agora

Comece a planejar sua próxima viagem com a GOL. Passagens em até 5x Semissões com taxa de Embarque Inclusa.

Patrocinado pela GOL Linhas Aéreas

Etapa 1: obtenha as peças

Imagens de Obter as Peças
Imagens de Obter as Peças
Imagens de Obter as Peças

2 Mais imagens
★ ☆ ★ Compre peças de sua loja local on-line ★ ☆ ★
1. Arduino Pro mini http://geni.us/WIhi0
2. AD9850 (Sintetizador DDS) http://geni.us/r3ETwE
3. Visor LCD de 16 × 2 (Hitachi hd 44780) http://geni.us/TZiGdf
4. Codificador Rotativo http://geni.us/tbUZFeH
5. cp2102 (conversor USB para serial) http://geni.us/tYwBs

Etapa 2: diagrama de circuitos

Imagem de diagrama de circuito
Conecte todos os componentes dados nos esquemas acima

Etapa 3: Assista ao tutorial completo

#CODE LIBRARY E SCHEMATICS
Code

Etapa 4: resposta de saída

Imagem da resposta de saída
Imagem da resposta de saída
Imagem da resposta de saída
Imagem da resposta de saída
Resposta de saída é as ondas de saída que você obtém em diferentes freqüências aqui são poucas tomadas de escopo para se ter idéia de quão bem ela é
1. 1MHZ
2. 10MHZ
3. 20 MHZ
4. 30 MHZ

[Fonte]  https://www.instructables.com/id/Arduino-30MHZ-DDS-Signal-Generator-In-12/

Publicado em 1 comentário

Como acelerar seu site WordPress

Como acelerar seu site WordPress em 9 Passos Fáceis

Introdução

Estudos revelam que as pessoas não tem paciência quando estão na internet. Aproximadamente 25% das pessoas abandonam uma página da internet que não carrega em 4 segundos ou menos. Pode parecer duro. Felizmente resolver isso não é tão difícil, se você conseguir reduzir o tempo de carregamento do seu website para 2,9 segundos, será mais rápido que metade do websites existentes. Isto significa que até mesmo a minimas melhorias de velocidade do website podem resultar em vantagens enormes para seu negocio. E como o WordPress domina metade da internet, donos de websites querendo melhorar a velocidade do site WordPress não é uma surpresa.
Neste tutorial, iremos mostrar como acelerar seu WordPress em 9 passos simples. Você não precisa ser um guru da programação para seguir este guia. Este tutorial WordPress é destinado as pessoas que estão iniciando. Seguindo este tutorial não irá apenas turbinar a retenção de seu site mas também melhorar o SEO!

Oque irá precisar

Antes de começar este tutorial você irá precisar de:

  • Acesso ao painel administrativo do WordPress

Passo 1 – Testando a Velocidade do WordPress

Antes de começar a jornada de otimização do seu WordPress, você precisa  saber como esta o sue site comparado com os outros sites. Testando a velocidade do seu site não é meramente uma formalidade, você pode se livrar de problemas seguindo o restante deste tutorial se seu site já tiver uma boa velocidade. Existem milhares de ferramentas uteis para indicar a performance do seu site. Recentemente publicamos um tutorial detalhado de como testar o seu site no GTmetrix, isto da dicas uteis de melhoria de velocidade combinado com intuições do Google Page Speed e resultados YSlow. Finalmente, se você verificar seu site contra outros sites, você pode você pode verificar o Pingdom.

Passo 2 – Removendo plugins e temas desnecessários

É normal adicionar novas funções em seu site para que ele se mantenha moderno e relevante. Em sites WordPress, isto é feito via plugins e temas. Muitas vezes, novos plugins substituem funcionalidades das funções originais que não são tão funcionais. Conforme o tempo passa, você deve encontrar seu site cheio de plugins e temas que não utilizados a algum tempo.
Um número excessivo plugins, especialmente os obsoletos, podem reduzir drasticamente a performance do WordPress. Como uma regra geral, a primeira coisa a fazer é remover ou pelo menos desativar os plugins desnecessários quando estiver otimizando o WordPress. O ideal é que seu site tenha apenas os plugins que são essenciais para o funcionamento. Tenha certeza de verificar nosso guia de como instalar e desinstalar plugins no WordPress.

Passo 3 – Minificando CSS, HTML e JavaScript

Minificar é uma das técnicas mais uteis se você quiser garantir a performance do seu site. Na tentativa de reduzir o tamanho dos arquivos do front-end e scripts (HTML, CSS, JS) removendo caracteres, como espaços e comentarios destes arquivos. O resultado é exatamente a mesma funcionalidade sem o volume adicional.
Plugins podem ajudar a na minificação incluem Autoptimize e W3 Total Cache. Para uma visão mais detalhada de como melhorar a performance do website através de arquivos minificados, veja este tutorial detalhado.

Passo 4 – Ativando Compressão Gzip

Além de minificar os arquivos, você pode também se beneficiar com uma forma separada de compressão, conhecida pro Gzip. Essencialmente, quando alguém visita seu site, recursos (arquivos) do seu site são buscados. Quanto maior os recursos, mais tempo para carregar no lado do cliente. Ao ativar a compressão Gzip, você pode diminuir substancialmente esses recursos, desta forma acelerando o processo de carregamento do site WordPress.
Para verificar se o seu site tem a compressão Gzip ativada, use checkgzipcompression.com, se não estiver, dite seu arquivo .htaccess e adicione o código a seguir:

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE image/x-icon
  AddOutputFilterByType DEFLATE image/svg+xml
  AddOutputFilterByType DEFLATE application/rss+xml
  AddOutputFilterByType DEFLATE application/javascript
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE application/x-font
  AddOutputFilterByType DEFLATE application/x-font-truetype
  AddOutputFilterByType DEFLATE application/x-font-ttf
  AddOutputFilterByType DEFLATE application/x-font-otf
  AddOutputFilterByType DEFLATE application/x-font-opentype
  AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
  AddOutputFilterByType DEFLATE font/ttf
  AddOutputFilterByType DEFLATE font/otf
  AddOutputFilterByType DEFLATE font/opentype
# For Older Browsers Which Can't Handle Compression
  BrowserMatch ^Mozilla/4 gzip-only-text/html
  BrowserMatch ^Mozilla/4\.0[678] no-gzip
  BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</IfModule>

Você pode também seguir nosso guia dedicado ao processo de ativar compressão gzip passo a passo no seu servidor. Por outro lado, plugins como WP-ROCKET podem ativar a compressão Gzip do seu site automaticamente.

Passo 5 – Otimizando Imagens

Devido à sua natureza estática, as imagens podem parecer bastante inocentes. Mas não seja enganado com isso – imagens em alta resolução podem causar empecilhos no carregamento no site caso você não preste atenção no tamanho das imagens. Isto não significa que você deva abandonar imagens de alta definição e utilizar menores. Existem muitos métodos de otimizar imagens em seu website. Plugins do WordPress como Smush Image Compression e Optimization oferece uma forma conveniente de alcançar boa velocidade de resposta sem perder a qualidade da imagem. Para mais informações sobre otimização de imagens no WordPress veja este tutorial.

Passo 6 – Dividindo conteúdos longos em páginas

Outra dica que você talvez tenha encontrado enquanto procurava formas de otimizar o WordPress é paginação. Isso significa dividir a pagina com conteúdos muito grandes em partes menores.  Essas partes podem ser visualizadas uma por uma em paginas separadas.
Paginação é normalmente utilizado para seções de comentários em websites, que carregam milhares de comentários simultaneamente utilizando muito trafego. Você pode facilmente ativar paginação nos comentários de um site WordPress – Apenas vá nas configurações, e vá em discussões. Aqui você pode determinar o número máximo de comentários por página. Um número balanceado é o recomendado. Não muitos por página, mas também, não pouco para que os usuários não precisam fica clicando constantemente em próxima pagina.
Em adição a seção de comentários, paginação pode também ajudar a dividir um post ou página em paginas separadas. Isto pode ser muito útil para posts longos, pois usuários não são aceitáveis com grandes textos a primeira vista. Paginação em posts podem ser ativados adicionando <!nextpage-> na versão text do post. WordPress irá detectar automaticamente e ativar para você.

Passo 7 – Atualizando o PHP para aumentar a velocidade do WordPress

Este é um dos truques menos conhecidos. Entretanto, é um dos que tem maiores impactos. Migrando do PHP 5 para o PHP 7 por sua conta pode parecer assustador, mas os benefícios são praticamente implorando para que você faça essa troca. A performance do WordPress aumenta o dobro no PHP 7  comparado ao PHP 5, o antigo pode processar 112% mais pedidos por segundo que o atual. Entretanto, WordPress também se beneficiou com o PHP 7 em otimização no consumo de memória, resultando em um melhoria de performance de 30 a 50%. É por isso que o PHP 7 é a versão padrão em nossos planos de hospedagens compartilhadas e conseguimos oferecer 5X mais velocidade pois somos otimizados para WordPress.
Algo que precisa ter em mente, entretanto, é a compatibilidade atrasada do PHP 7. Isto significa que você pode ser que alguns dos plugins ou temas que você utiliza não sejam compatíveis, incluindo aqueles que funcionavam perfeitamente no PHP 5. Para verificar se o seu site com os plugins e temas atuais são compatíveis use o PHP Compatibility Checker para o WordPress.

Passo 8 – Utilizando Plugin de Cache

Cache é o mecanismo conhecido por diminuir as cargas dos servidores. Basicamente, cache é um sistema que armazena as informações que são utilizadas com frequência pelo sistema dos clientes para que o navegador não precise ficar puxando as mesmas informações repetidamente do servidor. Cache pode melhorar substancialmente a performance  do site, sendo assim, umas das principais técnicas para melhorar performance do site WordPress.
Uma variedade de plugins estão disponíveis para WordPress com diferentes tipos de cache, incluindo WP-Rocket e W3 Total Cache. Recomendamos visitar nosso guia de como utilizar WP Super Cache para ativar cache no seu site WordPress.

Passo 9 – Utilizar uma rede de entrega de conteúdo (CDN)

Com a internet cada vez mais rápida, as vezes é fácil  esquecer, que os sites são hospedados em um servidor físico normalmente longe de sua localização. E as vezes, a distancia é tão grande que isso pode afetar o tempo de resposta. A maioria dos sites resolvem esse problema através de uma rede de entrega de conteúdo (CDN).
Quando você ativa CDN em seu website, o navegador do cliente não precisa buscar todas as paginas do servidor, ao invés disso, algumas paginas estáticas são forçadas a a ficar nos data centers próximos do navegador do cliente. Isto reduz o número total de requisições solicitadas ao servidor, consequentemente melhorando a performance do WordPress.
Várias opções estão disponíveis para escolher um CDN. Os mais populares incluem Cloudflare e MaxCDN. Nós fornecemos um tutorial separado de como configurar Cloudflare para seu site WordPress.

Conclusão

Neste tutorial, vimos como melhorar a velocidade do seu site WordPress seguindo algumas simples e uteis configurações. Seguindo estes passos, você deve ser capas de ver melhorias significantes na performance do site WordPress.
Para mais dicas e truques bem como guias detalhados, veja nossa seção de tutoriais WordPress. E se quiser conhecer mais sobre nossos planos, serviços de hospedagem de site e suporte, você pode entrar em contato com a nossa equipe.
[FONTE ]

Publicado em Deixe um comentário

Automático de Bateria

O módulo HC-SR04

O módulo de sensor ultrassônico HC-SR04 é comumente usado em projetos com Arduino
para realização em leituras de distâncias que podem variar entre 2 centímetros e 4 metros, permitindo uma precisão de 3 milímetros.
Baseado no envio e recebimento de sinais ultrassonicos pelos sensores, calcula a distância entre o sensor e o objeto com base no tempo entre o envio (Trigger) e o retorno (Echo) do sinal.
fonte: http://cienciaemserrinha.blogspot.com.br/2016/09/crob-aula-25-sensores-ultrassonico.html
O inicio de transmissão ocorre com um pulso de 10 us, seguido por 8 pulsos de 40 KHz, ode o sensor aguarda o retorno, determinando uma distância por meio de uma equação onde:
Distância = (Tempo Echo * velocidade do som) /2

Conexão com o Arduino

A ligação do Arduino com o módulo sensor ultrassônico é bastante simples: no modulo são encontrados 4 pinos, VCC,  Trigger, ECHO e GND.
Abaixo um exemplo de ligação do módulo em um Arduino Uno.
fonte: próprio autor

Código fonte (exemplo)

//Teste Sensor Ultrassonico
//Elaboração: Tony Emerson Marim
//=== http://mecatronizar.blogspot.com.br ===
//
// Baseado no programa original de FILIPEFLOP
//Carrega a biblioteca do sensor ultrassonico
#include <Ultrasonic.h>
//Define os pinos para o trigger e echo
#define pino_trigger 2
#define pino_echo 3
//Inicializa o sensor nos pinos definidos acima
Ultrasonic ultrasonic(pino_trigger, pino_echo);
void setup()
{
  Serial.begin(9600);
  Serial.println("Lendo dados do sensor...");
}
void loop()
{
  //Le as informacoes do sensor, em cm e pol
  float cmMsec, inMsec;
  long microsec = ultrasonic.timing();
  cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM);
  inMsec = ultrasonic.convert(microsec, Ultrasonic::IN);
  //Exibe informacoes no serial monitor
  Serial.print("Distancia em cm: ");
  Serial.print(cmMsec);
  Serial.print(" - Distancia em milimetros: ");
  Serial.println((float)cmMsec*10.0);
  Serial.print(" - Distancia em polegadas: ");
  Serial.println(inMsec);
  delay(1000);
}

No código acima uma leitura de distância em três unidades diferentes centímetro, milímetro e polegada e imprime os valores medidos no monitor serial do Arduino.
Para o funcionamento ideal desse módulo, faz-se necessário declarar no código fonte uma biblioteca Ultrassonic.h, que estarei disponibilizando ao final do projeto.

fonte: próprio autor

Projeto medidor de distâncias

Vamos nesse projeto fazer uso de um sensor ultrassônico para funcionar como uma trena eletrônica fazendo medidas de objetos colocados à sua frente, e mostrando em um display LCD as distâncias medidas.
Os componentes usados para a construção do projeto são:
1 Aruino (estarei usando um Arduino nano nessa demonstração)
1 protoboard
1 módulo sensor HC-SR 04
1 visor LCD 16×2
1 potênciometro 10Kohm
1 transistor 2N2222 (NPN)
2 resistores 10Kohm
1 pushbutton
1 buzzer 5VCC
cabos jumper
fonte: próprio autor
Quando o botão for acionado sinais ultrassônicos são disparados pelo sensor até localizar um objetos e calcular o tempo de retorno exibindo o valor da distância.
Existe no projeto um transistor 2N2222 tipo NPN um resistor e um potenciômetro, ambos com uma resistência de 10Kohms, responsáveis para o funcionamento do display a cada leitura. Um buzzer faz com que o usuário se atente para uma condição onde o dispositivo fica fora do alcance para medição e o retorno de toda leitura vai ser demonstrada em um visor LCD 16X2.

Para o funcionamento do visor segue um tutorial simples da ligação de um visor LCD no arduino (tutorial) onde está disponível também informações sobre a biblioteca necessária para seu funcionamento.

Esquema de ligação

Seguindo o desenho abaixo todos os componentes necessários para o funcionamentos estão expostos como sugestão para o sistema.

fonte: próprio autor

O código fonte

//Medidor com Ultrassonico e LCD
//Elaboração: Tony Emerson Marim
//=== http://mecatronizar.blogspot.com.br ===
// Variáveis do processo
int l = 255;
int PINO_TRIGGER = 9;
int PINO_ECHO = 8;
#define BUTTON 10
#define LUMIN 7
#define PINO_TRIGGER 9
#define PINO_ECHO 8
#define NOTE_A4 440
// Bibliotecas utilizadas
#include <LiquidCrystal.h>
#include <Ultrasonic.h>
// Pinagem utilizada na biblioteca do LCD
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
  pinMode(BUTTON, INPUT);
  pinMode(PINO_TRIGGER, OUTPUT );
  pinMode(PINO_ECHO, INPUT );
  pinMode(LUMIN, OUTPUT);
  Serial.begin( 115200 );
  Serial.println( "Ultrasonic ranging module: ");
  // Especificação de coluna e linha na LCD
  lcd.begin(16, 2);
}
void loop() {
while(digitalRead(BUTTON) == LOW) {             // Estado da leitura enquanto sinal baixo
  analogWrite(LUMIN, 0);
  lcd.clear();
  noTone(6);
}
analogWrite(LUMIN, l);
digitalWrite(PINO_TRIGGER, LOW);            // sinal baixo no pino Trigger
digitalWrite(PINO_TRIGGER, HIGH);        // envia pulso de 10us no pino
delayMicroseconds( 100 );
digitalWrite(PINO_TRIGGER, LOW);
long duration = pulseIn(PINO_ECHO, HIGH);
long r = 3.4 * duration / 2;            // Lógica matemática da distância
float distance = r / 100.00;
lcd.setCursor(0, 0);
lcd.print("tempo: ");
lcd.print(duration);
lcd.print(" us    ");
lcd.setCursor(0, 1);
if( duration > 38000 ) {
lcd.println("fora de alcance    ");
  tone(6, NOTE_A4);
}        // condição se duração for maior que 38ms para encontrar um obstáculo
else {
  lcd.print("dist: ");
  lcd.print(distance); lcd.println(" cm    "); noTone(6);
  }
delay( 5000 );                            // tempo ativo na LCD para leitura dos dados
}
Nesse circuito o sensor ultrassom de pois de enviar uma rajada de pulsos, calcula a distância do objeto e retorna o valor em unidades métricas para ser exibida pela LCD, que também recebe o tempo de retorno do trabalho executado. Caso o objeto esteja fora de alcance do sensor um sinal sonoro é emitido até que se torne possível encontrar o obstáculo.

fonte: prórpio autor

No vídeo abaixo é possível assistir uma demonstração do circuito em funcionamento.

Você pode encontrar para baixar a biblioteca do módulo Ultrasonic nesse LINK.
Caso seja necessário, todos os arquivos para realização do projeto encontra-se nesse LINK.

[FONTE]  http://www.mecatronizando.com.br/2016/10/medidor-de-distancias-arduino-lcd.html
Publicado em Deixe um comentário

Interfacing o Arduino no modem USB GPRS

Modem GPRS barato da Dealextreme

Modem GPRS barato da Dealextreme

Para explorar a funcionalidade deste dispositivo eu escrevi um programa simples que é baseado no terminal Xbee . O programa inicializa o PL-2303 e aguarda a entrada do usuário passando as teclas para o modem e exibindo respostas para a tela. Vamos executá-lo e ver do que este pequeno modem é capaz.
O arranjo de hardware é mostrado na imagem do título. Durante a operação normal, o sistema pode ser alimentado por USB; dependendo da sua placa Arduino você pode precisar desconectar o modem durante a programação. Todas as interações ocorrem via emulador de terminal rodando em um PC – eu uso massa no Windows e minicom no Linux. Usar o monitor serial incorporado no Arduino IDE não é recomendado. O modem precisa de cartão SIM ativado para funcionar, eu uso SIM pré-pago da T-Mobile e também o usei com sucesso com a AT & T.
Se tudo estiver conectado corretamente, o esboço gerará o seguinte:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Começar
PL Init
Addr: 1
NC: 1
0000: 09 02 27 00 01 01 00 A0 FA 09 04 00 00 03 FF 00
0010: 00 00 07 05 81 03 0A 00 01 07 05 02 02 40 00 00
0020: 07 05 83 02 40 00 00 Conf.Val: 01
Iface Num: 00
Alt. Set: 00
Descritor de ponto final:
Comprimento: 07
Tipo: 05
Endereço: 81
Atributos: 03
MaxPktSize: 000A
Enquete: 01
Conf.Val: 01
Iface Num: 00
Alt. Set: 00
Descritor de ponto final:
Comprimento: 07
Tipo: 05
Endereço: 02
Atributos: 02
MaxPktSize: 0040
Poll Intrv: 00
Conf.Val: 01
Iface Num: 00
Alt. Set: 00
Descritor de ponto final:
Comprimento: 07
Tipo: 05
Endereço: 83
Atributos: 02
MaxPktSize: 0040
Poll Intrv: 00
Conf: 1
PL configurado

A última mensagem (linha 38) mostra que o PL-2303 foi reconhecido e configurado com sucesso. Digite atno teclado e pressione Enter. Se você vir OKna próxima linha, o modem está ativo e respondendo.

...
Conf: 1
PL configurado
a
Está bem

Agora vamos ver se um modem está conectado a uma rede. Digite at+creg?e pressione Enter:

em + creg?
+ CREG: 0, 1
 
Está bem

O segundo número em resposta indica o estado do registro. Minha saída (1) significa que o modem está felizmente registrado na rede doméstica. Outros números que você pode ver são “0” – sem serviço, “2” – procurando operador, “3” – registro negado.
Se o modem estiver registrado, é possível determinar o operador da célula:

no + cops?
+ COPS: 0,0, "T-Mobile 260"
 
Está bem

Quando o modem está online, podemos fazer algo útil. Eu já enviei várias mensagens de texto para este número, vamos dar uma olhada nelas usando o +CMGLcomando:

em + cmgl = 1
+ CMGL: 1,1, 50
07912160130320F8040B919127163673F500001101814190044A23F3F61C6496BFDBA0F3FB7D6697152D503BACAFCBDF76C0B91D4EB35DE3771B
+ CMGL: 2,1, 57
07912160130320F5040B919127163673F500001101814124244A2B66F9BB0D3ABFDF677619447F83885850FB4D2EB7152D503BACAFCBDF76C0B91D4EB35DE3771B
+ CMGL: 3,1, 53
07912160130320F8000B919127163673F500001101817184554A26F4F29C0E9A81CCF2771B747EBFCFECB2A2056A87F575F9DB0E38B7C369B66BFC6E03
+ CMGL: 4,1, 53
07912160130320F8040B919127163673F500001101817145154A26F4F29C0EA281CCF2771B747EBFCFECB2A2056A87F575F9DB0E38B7C369B66BFC6E03
 
Está bem

O que você vê é emitido no formato PDU. Muitos dispositivos GSM têm esse formato ativado na inicialização. Tudo bem com computadores, mas não é tão fácil para humanos. Felizmente para nós, este modem também suporta o modo de texto SMS, que pode ser ativado usando o +CMGFcomando:

a + cmgf = 1
Está bem
em + cmgl = "ALL"
+ CMGL: 1, "REC READ", "19725555555" ,, "11/10 / 18,14: 09: 40-36", 145,35
sms do google
               - m ... v@gmail.com
+ CMGL: 2, "REC READ", "19725555555" ,, "11/10 / 18,14: 42: 42-36", 145,43
do google ao modem DX
                       - m ... v@gmail.com
+ CMGL: 3, "REC READ", "19725555555" ,, "11/10 / 18,17: 48: 55-36", 145,38
teste 3 do google
                  - m ... v@gmail.com
+ CMGL: 4, "REC READ", "19725555555" ,, "11/10 / 18,17: 54: 51-36", 145,38
teste 4 do google
                  - m ... v@gmail.com
 
Está bem

O envio de mensagens também é fácil. Isso é feito usando o +CMGScomando. O comando considera o número de telefone do destinatário como um parâmetro e gera um prompt no qual uma mensagem pode ser digitada. O fim da mensagem é indicado pressionando Ctrl+z, certifique-se de que seu programa de terminal passe este código inalterado para o modem (a massa funciona corretamente aqui). Aqui está um exemplo:

em + cmgs = "19725555555"
> teste da T-Mobile para o google
>
+ CMGS: 34
 
Está bem

Há muito mais que pode ser feito com este pequeno modem (ou para qualquer telefone GSM). Algumas coisas, como fazer ou receber chamadas, são bem fáceis de fazer, enquanto outras, como acessar a Internet, exigiriam alguma programação extra. Nas próximas semanas, estou planejando desenvolver código para dar suporte a um telefone celular no modo autônomo; Nesse meio tempo, tente falar com seu telefone via terminal e deixe-me saber se você tem algum problema.
Oleg.

[Fonte] https://www.circuitsathome.com/mcu/interfacing-arduino-to-usb-gprs-modem/

Publicado em Deixe um comentário



OpenCart Brasil – Tutoriais































Publicado em Deixe um comentário

Meu blog não aparece no google! O que fazer?

Uma das coisas mais terríveis para um blogueiro é não saber o que acontece quando seu blog não aparece nos mecanismos de busca. Muita gente se pergunta “Por que meu blog não aparece no Google?” e a resposta é muito simples. Para que um website ou blog seja visível nos mecanismos de busca ele deve permitir que os buscadores o vejam.

Antes de continuar lendo esse artigo, quero te fazer uma pergunta. Você já pensou em criar um negócio lucrativo na internet, começando do zero, sem ter nenhuma experiência e faturar um extra de 50 a 100 reais por dia? Então clique aqui e assista ao meu vídeo.

Não está entendendo nada ainda, não é verdade? Pois bem, imagine que alguém tira uma foto horrível sua e publica em um site muito conhecido sem a sua autorização. Pode ser que você fique muito irritado ou goste da ideia. Mas em qualquer situação você poderia processar o dono do website por utilizar a sua imagem.
Antes de o Google listar seu blog ele verifica se você deu permissão para que ele faça isso. Você precisa deixar bem claro que ele pode entrar no seu blog, fazer uma análise para ver se o seu conteúdo é bom e depois colocar seu site em sua lista. Sem essa permissão

[Fonte]