Como disse no artigo anterior, a solução acabaria por fazer a mina própria biblioteca, assim este artigo é sobre o estado em que se encontra a mesma.
Consegui fazer com que os primeiros caracteres aparecessem no ecrã.
Daí dei um jeito no código "em bruto", para ficar mais flexível e fácil de usar no futuro.
Basicamente o que estou a fazer é a inicialização do LCD, a colocação do cursor num endereço e a escrita de caracteres com incremento automático do endereço do cursor.
Código para utilização do LCD com comunicação a 4 bits.

Rotina de configuração do LCD:
void config_lcd()
{
    // E   RS  RW  D7  D6  D5  D4
    // RB7 RB6 RB5 RB4 RB3 RB2 RB1

    char i;
    char config[7]={
                    0b10000100, //1ª config - 4bits
                    0b10000100, //4bits; 2linhas; 5x8pontos + E
                    0b10010000, //4bits; 2linhas; 5x8pontos + E
                    0b10000000, //E + display ON; mostra cursor; cursor pisca
                    0b10011110, //E + display ON; mostra cursor; cursor pisca
                    0b10000000, //E + cursor incrementa; sem display shift
                    0b10001100, //E + cursor incrementa; sem display shift
                  };

    for(i=0;i<7;i++)
    {
        PORTB = config[i];
        __delay_us(50);
        PORTBbits.RB7=0;
        __delay_us(50);
    }  
}

Rotina de posição do cursor:
void cursor_lcd_pos(char posicao)
{
    /*
     * 00h -> linha 1
     * 40h -> linha 2
     */

    PORTB = ((posicao>>3) & 0b1110) + 0b10010000;
    __delay_us(50);
    PORTBbits.RB7=0;
    __delay_us(50);
    PORTB = ((posicao<<1) & 0b11110) + 0b10000000;
    __delay_us(50);
    PORTBbits.RB7=0;
}

Rotina de escrita no display:
void escrever_lcd(char texto[])
{
    char length, i;

    length=strlen(texto);

    for(i=0;i<length;i++)
    {
        PORTB = ((texto[i]>>3) & 0b11110) + 0b11000000;
        __delay_us(50);
        PORTBbits.RB7=0;
        __delay_us(50);
        PORTB = ((texto[i]<<1) & 0b11110) + 0b11000000;
        __delay_us(50);
        PORTBbits.RB7=0;
        __delay_us(50);
    }
}

Exemplo de código main();
void main()
{
    PIC_init();

    config_lcd();
    cursor_lcd_pos(3);
    escrever_lcd("Ola mundo ");

}

Confirma-se... após uma discução no fórum da microchip, que a melhor opção é fazer a minha própria biblioteca ou funções para comunicar com o módulo LCD.
Este compilador C pode não trazer uma grande quantidade de bibliotecas funcionais (pois leva-me a crer que muitas foram copiadas do hi-tech), mas os Application Notes da microchip são fantásticos.
No entanto, continuei a ter algumas dificuldades em comunicar com o display e só após algumas horas de leitura do datasheet da Hitachi é que comecei a entender o conceito aqui usado.
É realmente muito trabalhoso e demorado comunicar com um LCD sem recorrer a bibliotecas já feitas, mas o desafio era esse mesmo. De realçar que existe o modo de comunicação por 8 bits + E + RS + RW, mas obviamente optei pelo método de 4bits + E + RS + RW, pois desta forma ocupo apenas 7 pinos para ligar ao módulo.
O bom é que com a minha biblioteca "vai fazer" coisas que normalmente não se fazem (pelo menos as que conhecia do CCS)...
O facto de estar a fazer todo o código de raiz faz com que o meu conhecimento acerca do mesmo seja bem maior, assim como um conhecimento mais detalhado dos LCD. Isto vai permitir-me fazer caracteres especiais, símbolos, marcas, etc...
Em futuros projectos, o uso destes LCD's que embora baratos, poderá levar um toque mais personalizado à sua aplicação.
Primeiros caracteres no display começaram a surgir. Nos próximos dias irei postar mais evoluções, até completar uma biblioteca "minima" que me permita iniciar o display, fazer todo o processo de escrita "automaticamente" e fazer a alteração do endereço do cursor .

Até agora, desde que passei a usar o MPLAB XC8, que tenho feito sempre as minhas bibliotecas de raiz (excepto claro as dos MCU) ou  pelo menos todas as funções de raiz.
Este fim de semana apetece-me ligar um PIC16F88 a um LCD 16x2, mas sinceramente não queria escrever tudo de novo, pois o XC8 possui a biblioteca "xlcd.h" para estes casos.
Vamos ver o que consigo fazer ou se vou acabar por fazer todo o código como de costume.
Começa mais uma noite de "auto aprendizagem" :D.

Link para o artigo de Agosto, altura em que comprei 2 LCD:

Embora não tenha muito tempo ultimamente, hoje cheguei a casa e ainda estive a fazer esta pequena montagem.
Trata-se de um pré-amplificador de microfone irá integrar um dos vários pequenos projectos que estão para se realizar.
Tem somente a finalidade de dar ganho a um micro e seguido deste circuito poderia simplesmente colocar-se um LM386 com um altifalante e teríamos uma espécie de "megafone".
Pode ter muitas outras utilidades, como entrada num vuímetro, sensor desliga/liga lâmpada com o bater de palmas, etc... no fundo e como é de esperar, tudo o que de relacionado há com  aquisição de som.

Tenho andado a estudar um pouco, um pequeno MCU.
Trata-se do PIC12F1822.... é um monstrinho em 8 pinos.
Além do "comum", este micro tem USART, oscilador interno de 32MHz, DAC, PWM, etc...
Estava a ler e a implementar em simulação uma pequena experiência com uma ADC (10 bits) e quando estava a fazer a configuração, verifiquei que a DAC poderia servir de referência para a ADC.
Mas... espera lá!
A DAC a servir de referência para a ADC?
5/32=156mV
Ou seja, cada salto da DAC é de 156mV.
Se usar isso como referência para a ADC de 10bits, então:
156mV/1024=153uV
Com rigor ou não.... poderei ter leituras na ADC na ordem dos 153uV!
E é assim que se usa uma ADC para ler ruído eheheh.
Fazendo mais uns calculos,
32*1024=32 768
Resumindo, ganha-se uma ADC de 32 768bits a partir de uma ADC de 10bits e uma DAC de 5bits.
Alterando ainda a referencia da DAC para uma interna de 1.024V,
1.024V/32=32mV
Ou seja, cada salto fica com 32mV e sendo dado como referência ao ADC, então,
0.032/1024=0.00003125=31.25uV
Ahahahahah... na teoria não seria sequer necessários ampops... isto conseguiria medir valores de tensão tão baixos!

O blogue tem andado um pouco mais "morto" pois isto anda fraco de engenhocas...
O trabalho, as frequências, os projectos, etc... tiram bastante tempo e ultimamente não tenho encontrado muito material para fazer mais engenhocas.

Pois bem, fica aqui o desafio, que toda a gente pode responder em comentário, para uma engenhoca.
Se alguém tiver alguma ideia para eu fazer, algum projecto que queira partilhar, etc..., basta entrar em contacto comigo via comentário ou directamente via e-mail para cr7aek@gmail.com .


Ora aqui uma noticia bem interessante. Um gerador de energia eléctrica, aproveitando o vento, mas sem partes móveis, ou seja, sem pás.
Ao que parece, numa universidade da Holanda, conseguiram dar um importante passo nesse sentido.
A wind-driven electricity generator without moving mechanical parts is adorning the lawn of Delft University of Technology, The Netherlands. The Electrostatic Wind-Energy Converter (EWICON) could unobtrusively function in an urban landscape.
Wind turbines supply a significant part of the renewable energy mix. But wind farms meet a lot of resistance from local populations because of noise pollution, flickering shadows and birds getting killed. The EWICON, which looks like wire mesh artistically framed in a giant 0, eliminates these negative aspects. Also, the absence of moving parts reduces maintenance costs significantly.
Prof. dr. Johan J. Smit High head of the Voltage Technology & Management Institute of Delft University explains how the EWICON works. ‘Using high voltage, electrically charged droplets of water are produced in the horizontal elements. At the same time these horizontal elements, which are electrodes, generate an electric field. As the wind forces the electrically charged droplets against this electric field towards the earth, the converter is charged to DC voltages of between 80 and 100 kilovolts. After conversion to AC, this can then be used to supply power to the electricity grid.’
The bladeless electricity generator installed on the University’s campus is a working prototype. The output power is dependent on a variety of factors like the method used to generate the aerosol of charged droplets, the size of the droplets, the flow rate of the liquid, electrode configuration, humidity of the environment and wind speed. Funding is needed to continue the development and the upscaling of the EWICON.
Its unobtrusive nature makes the power plant suitable for installation in urban areas. At the same time, its low maintenance requirements makes the EWICON an interesting candidate for off-shore wind farms.
For deeper understanding of the complexity of the system read the 2011 master thesis of Arjan Winters.
EWICON was developed in a collaborative effort of Delft University, Wageningen University and four commercial businesses. Physicist Piet Sonneveld of Wageningen University devised the bladeless wind energy converter and delivered proof of concept in 2002. The prototype was designed by engineer Francine Houben of architecture firm Mecanoo.

Link para 2011 master thesis of Arjan Winters: http://repository.tudelft.nl/view/ir/uuid:81221f03-9d46-4c7c-a5b0-b859a26f7d04/

Fonte: http://www.techthefuture.com/energy/dutch-techies-build-bladeless-wind-power-plant/#.UWfGaWLvwng.twitter

Quem já ligou uma coisa DESTAS, sabe que por vezes o windows confunde com o Serial Ball Point Mouse.
Tenho andado a tentar ligar o Datalogger ao MATLAB, mas cada vez que começo a receber dados, o windows reconhece o conversor como um rato. Tal e qual a imagem em cima.
Já tentei várias formas, incluindo o "SerialBallPointMouseDisabler", mas ele nunca funciona por muito tempo e passado um pouco (ou desligar e voltar a ligar o conversor), o windows volta a activar o "rato".
Pelo que tenho lido, isto também acontece muito com GPS.
Se alguém souber como desactivar de uma vez o Serial Ball Point Mouse, comente aqui.
Agora para conseguir, tenho de ligar o conversor ao datalogger, ir aos dispositivos, desinstalar o rato, tirar o conversor do circuito, correr o "SerialBallPointMouseDisabler", voltar a ligar o conversor ao circuito e funciona certo.
Em baixo, primeiras experiências a receber dados pelo MATLAB, usando uma porta serial.

Brilhante trabalho recorrendo a uma célula de Peltier, semelhante à que já tinha AQUI mostrado.
Não tem nenhuma "arte mágica", nem difere do que tinha já mostrado, mas de frisar aqui a beleza da construção.
Podem ver mais pormenores na página do Instructables:

Noticia de dia 1 de Abril, publicada no Expresso, que tem um ligeiro atraso. 
Desde o dia 27 de março que Portugal é abastecido por eletricidade produzida quase exclusivamente por fontes renováveis. Dados divulgados pela REN - Redes Energéticas de Portugal mostram que as eólicas e as barragens estão a beneficiar do mau tempo que tem assolado o país e que está a dispensar por completo as centrais térmicas a gás natural.No dia 1 de abril, por exemplo, dos 124,7 gigawatts hora (GWh) consumidos, apenas 3,8 GWh tiveram origem nas centrais térmicas a carvão. Só as eólicas injetaram no sistema elétrico nacional 65,8 GWh durante o primeiro dia de abril. Já por ocasião do temporal registado na noite de 18 para 19 de janeiro deste ano tinha havido uma produção considerada "excecional" de eletricidade como origem em fontes renováveis (55% do consumo ocorrido nessa data), por alguns especialistas em energia. O que não é normal, segundo as mesmas fontes, é estarmos já no sexto dia consecutivo (27 de março a 1 de abril) com o sistema eletroprodutor quase 100% assente em fontes de energia renováveis, com destaque para as eólicas e para as barragens.Outra nota de destaque vai para o facto de em todos esses dias Portugal ter produzido mais do que necessitava para consumo interno, o que acabou por resultar num incremento das exportações de eletricidade.
Ler mais: http://expresso.sapo.pt/energias-renovaveis-abastecem-o-pais-ha-seis-dias=f797631#ixzz2PU0trc5Y

Ao ler o artigo escrito no "Engenharia é:" sobre 7 limites e curiosidades do nosso corpo, encontrei esta pergunta e resposta que obviamente não podia deixar de colocar por aqui.
Visitem o link no final do artigo pois tem curiosidades bastante interessantes.
5. Qual é o maior choque eléctrico uma pessoa pode suportar?

É muito difícil dizer com precisão qual é a tensão que pode matar uma pessoa adulta, os efeitos do choque dependem muito mais da corrente e a corrente não depende apenas da tensão, mas também da resistência apresentada pela pessoa no momento do choque.
Essa resistência pode variar entre centenas de milhares de OHM( é a unidade de medida da resistência elétrica) nos pontos em que a pele é mais grossa e seca, até algumas centenas de OHMS nos locais em que a pele seja fina ou esteja ferida e molhada.
Importante na análise das condições em que uma pessoa pode levar choques é o fato da corrente poder circular somente se houver um percurso para isso, o que quer dizer que uma pessoa só pode levar um choque se a corrente puder circular entre dois pontos de seu corpo.
No choque clássico (aquele em torno de 220v), o coração é colocado fora do seu ritmo de batida, processo chamado de fibrilação ventricular.
O limiar da sensação de seres humanos é um milliamp (1mA), enquanto uma corrente de 200mA é fatal – capaz de parar um coração humano de aproximadamente 300g.

Aqui está um pequeno circuito, usando um NE555 com um potenciómetro, para variar a frequência da saída.
O circuito foi montado em menos de 1h, aproveitando componentes de projectos antigos, como mostra a primeira foto.
Este é daqueles circuitos que vale a pena ter sempre por aqui. Sinceramente raramente se usa (pelo menos com a frequência escolhida), mas lá vem a altura em que é preciso :D.

Este video foi colocado no blogue "Hack a Day" e tem o direito de ser divulgado por todos.
De facto há coisas que que aparecem nos filmes que leva a crer que pessoas especializadas em geometria, serão óptimos hackers.
Fonte: http://hackaday.com/2013/03/28/top-10-hacking-failures-in-movies/

Mais um curso completo, desta vez de controlo de robots moveis, ministrado pelo Georgia Institute of Technology.
Começou a 28 de Janeiro deste ano e teve a duração de 7 semanas, o qual terminei com uma nota média de 80%.
Vou tentar partilhar uma pasta com os slides para quem quiser posteriormente consultar....

Tal como prometido, cá estão as fotos do "produto final".
A lâmpada usada é de cerâmica, própria para aquecimento, de 100W.
Na última foto, na lateral esquerda é visível a NTC.
        

Esta é uma noticia já com alguns dias, mas tenho tentado aguardar por mais imagens.... mas não houve muito mais divulgação.
Jeff Bezos, o fundador da empresa de vendas online Amazon, anunciou esta quarta-feira ter conseguido recuperar do fundo do oceano os motores do foguetão da missão Apollo 11, que em 1969 levou os primeiros homens à Lua, na missão comandada por Neil Armstrong.
"Encontrámos muita coisa", escreveu o empresário no seu blogue, citado pela AFP, numa altura em que se preparava para desembarcar de uma missão de três semanas no Atlântico.
"Descobrimos uma maravilha submarina - uma incrível escultura de motores F-1 entrelaçados, que contam a história do fim explosivo que tiveram e que serve também de testamento do programa Apollo", acrescentou.
O milionário contou ainda que a sua equipa conseguiu recuperar elementos suficientes para reconstituir dois dos motores que voaram na Apollo 11, que serão agora submetidos a um trabalho de restauro que ponha termo à corrosão.
"Queremos que o material conte a sua própria história, especialmente a do regresso através da atmosfera a 5 mil milhas por hora (mais de 8 mil km/h) e o impacto no oceano", garante Bezos.
Os motores estavam há 40 anos sob as águas do Atlântico, a 4267 metros de profundidade. Foram detectados através de sonar. Quando anunciou a missão, Bezos fez questão de esclarecer que, ainda que a operação seja financiada por fundos privados, os motores continuam a ser propriedade da NASA.


O objectivo comum de ir para além da hora, ou seja, manter um compromisso ao longo de todo o ano com um modo de vida mais sustentável, essencial para salvar o Planeta, une todos os que participam na Hora do Planeta e fazem desta muito mais do que um desligar de luzes tornando-se um símbolo do compromisso das pessoas para proteger o planeta. 
De várias partes do globo chegam histórias inspiradoras de jovens e crianças que se comprometem a salvar o planeta e lideram o caminho para um futuro mais sustentável através da Hora do Planeta.
* Fonte: http://www.wwf.pt/?207950/Hora-do-Planeta--faltam-4-dias--Crianas-e-jovens-inspiram-o-mundo
Por curiosidade, consultei o diagrama de consumos da REN referente ao dia 23, Sábado passado.
A diferença de consumo é imperceptível...

Infelizmente perdi algumas fotos por ter que inevitavelmente formatar o computador.
No entanto sobrou a foto em baixo que tinha sido enviada por e-mail e por isso "sobreviveu", embora não corresponda bem ao aspecto final da montagem.

Como tenho vindo a escrever nos artigos anteriores, perdi várias fotos e as da construção da criadeira também lá estavam.
Vou tentar conseguir colocar aqui algumas fotografias já de tudo montado.
Por agora posso dizer também, numa consideração final, de que tudo correu como planeado, excepto uma coisa: a lâmpada de cerâmica (100W) não é tão forte como o desejável (a nível de produção de calor) e a caixa talvez seja demasiado grande, pelo que o seu aquecimento é mais demorado...

Finalmente um Amiga no EEVBLOG!
Já AQUI tinha escrito, em Setembro passado, que tinha encontrado um Amiga A1200.
Por total falta de tempo, não lhe pude dedicar o tempo merecido, pelo que ainda está ali guardado à espera desse dia. No entanto o Dave Jones fez há poucos dias o teardown de um Amiga 500, sendo por isso ainda mais antigo que o meu.
Aqui fica mais um brilhante video!

O circuito em baixo representa o dito carregador solar para Ni-MH (AA, 1,2V).
Trata-se de uma fonte de corrente "constante" permitindo assim uma melhor carga da pilha e uma maior vida útil.
Ainda estão presentes as pontas de prova usadas para fazer a simulação. O circuito foi, obviamente, testado na realidade antes da montagem (soldar os componentes numa veroboard). Infelizmente tenho andado meio chateado com o meu computador e perdi algumas imagens, entre elas as fotos do teste deste circuito.
Retomando ao circuito em si, tal como disso no artigo anterior, a explicação do seu funcionamento está no seguinte link, pelo que não vou reescrever aqui tudo novamente.

PS: V1 representa os 2 paineis em série e SW1 simula a fase de carga (durante o dia) ea fase de descarga (durante a noite).

Já era altura de conseguir algum tempo para montar este circuito numa veroboard e livrar a breadboard para outras ideias.
Em baixo podem ver um registo fotográfico das várias fazes da montagem.
Além do circuito original, adicionei ainda um relé, comandado também pelo MCU, mas que momentos após ligar o MP3 possa accionar a PTT do rádio e este faça a transmissão.
Coloquei também um LC, antes do LM317, para filtrar possíveis perturbações que venham pela alimentação (dado que será a mesma que a do rádio).
Eu tudo o resto permaneci fiel ao que mostrei no video da parte 6.

Como já tinha dito AQUI, andava a trabalhar num outro pequeno projecto para o actioman do METEOPT, mas a falta de tempo, impossibilitou-me de vir aqui documentar, pelo que ficará tudo explicado nos próximos artigos.
O problema era que a estação Davis Vantage Pro2 Plus, na versão cabo, não vinha com FARS 24H, ou seja, não permite a passagem forçada de ar (com recurso a ventoinha) 24h por dia, mas sim somente quando há Sol, através dos painéis solares.
Uma vez que tem 2 painéis solares ao dispor, a solução passa por construir um circuito que utilize a potencia máxima dos paineis, para que a ventoinha continue a rodar e que consiga carregar uma comum pilha de 1,2V de Ni-MH.
Cada painel tem uma tensão de saída de 2,2V e a capacidade de produzir até 400mA. A ventoinha necessita de cerca de 1V com 100mA para girar normalmente.

Acerca das pilhas de Ni-MH, já tinha falado num outro projecto: ver AQUI.
Devem ser carregadas com uma corrente "constante" e o recomendado é cerca de 0,1C (ou seja, 10% a sua carga total).
Sabendo isto tudo há que pensar num circuito que controle a corrente que entra na pilha, de forma a que seja sempre a mesma (obviamente nas mesmas condições de iluminação).
Uma forma de não complicar demasiado o circuito e saber que tudo vai funcionar é recorrer a uma fonte de corrente usando um transistor.
Quem quiser colocar alguma leitura em dia pode dar uma vista de olhos nesta página, com tudo bastante bem explicado:

Funcionou perfeitamente!
É só soldar tudo e montar a criadeira.
No video estão mostrados alguns valores de tensão, resultantes do divisor de tensão da NTC e do potenciómetro.
A lâmpada será trocada por uma lâmpada cerâmica apropriada para aquecimento de terrários etc...