Академический Документы
Профессиональный Документы
Культура Документы
Rio de Janeiro
2010
UNIVERSIDADE GAMA FILHO
INSTITUTO SUPERIOR DE EDUCAÇÃO TECNOLÓGICA
CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO
Por:
Orientador:
Rio de Janeiro
2010
UNIVERSIDADE GAMA FILHO
Rua Manoel Vitorino, 553 - Piedade
Rio de Janeiro - RJ
FICHA CATALOGRAFICA
Rio de Janeiro
2010
ASSINATURAS
Dos Autores:
_________________________________
Alexandre Augusto Gilii
_________________________________
Bruno Tolomelli
Do Professor Orientador:
_________________________________
Andre Eppinghaus
II
AVALIAÇÂO
Considerações Avaliativas:
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
........................................................................................................................................
III
DEDICATÓRIA
IV
AGRADECIMENTOS
V
RESUMO
VI
ABSTRACT
The need of improvements, standardization and reduction of costs in the productive stages,
they have been converging every time with larger intensity to the applied industrial
automation process devices. As stage of natural evolution of the automation process, the
communication, or even process interaction in different areas, separated geographically is
today a reality in most of the great companies, looking for to optimize resources, to make
available information, making possible an integrated administration of the productive stages
with the corporate objectives. Important aspects should be appraised in this new proposed
model, the technology available a to personal and equipments safety's aspects . The available
technology for disposition and manipulation of the variables of the productive process, be this
with thread or without thread, frequency sign for wave magnetic, resonant or luminous,
accesses for road public or private, parameters of projects as system of personal safety, datas
disposal and process protection should be considered previously in the project step.
VII
LISTA DE ILUSTRAÇÕES
VIII
SUMÁRIO
CAPA..........................................................................................................................................i
FOLHA DE ROSTO.................................................................................................................ii
ASSINATURAS.......................................................................................................................iii
AVALIAÇÃO...........................................................................................................................iv
DEDICATÓRIA........................................................................................................................v
AGRADECIMENTOS............................................................................................................vi
RESUMO..................................................................................................................................vi
ABSTRACT............................................................................................................................viii
LISTA DE ILUSTRAÇÕES..............................................................................................ix e x
1. INTRODUÇÃO ............................................................................................................1
1.2. Justificativa.......................................................................................................2
1.3. Relevância.........................................................................................................3
2.1. Rede...................................................................................................................4
IX
2.2.3.2. Topologia em barras.................................................................7
X
2.6.6.1 Circuitos para enviar sinal para a Porta Paralela.......................25
2.7.5 Filtrar...............................................................................................30
2.7.8 Recircular.........................................................................................33
2.7.9 Drenar...............................................................................................34
2.7.10 Fechar.............................................................................................35
XI
2.7.21 Como utilizar o Estabilizador de Cloro.......................................46
2.7.22 Cuidados........................................................................................47
2.8 Linux.........................................................................................................................61
2.8.1 História.........................................................................................................61
2.8.2 Nucleo...........................................................................................................63
2.8.3 Arquitetura..................................................................................................63
2.8.4 UNIX.............................................................................................................63
2.8.5 Termos de Licenciamento...........................................................................64
2.8.6 Sistemas de arquivos suportados...............................................................65
2.8.7 Distribuições................................................................................................66
2.8.8 Código Aberto e Programas Livres...........................................................68
2.8.9 Controvérsias quanto ao nome..................................................................68
2.8.10 Sobre o símbolo.........................................................................................69
2.9 Apache+PHP............................................................................................................70
2.9.1.1 Introdução.......................................................................................70
2.9.2 PHP...............................................................................................................73
2.9.2.1 Historico....................................................................................................73
2.9.2.5 Visibilidade...............................................................................................75
XII
2.9.2.6 Polimorfismo ............................................................................................76
XIII
3.2. Descrição do projeto.......................................................................................94
3.3.2 Piscina...................................................................................................95
3.9 Softwares..........................................................................................................97
3.10 Hardware........................................................................................................98
4. CONCLUSÃO...........................................................................................................103
5. ANEXOS...................................................................................................................104
XIV
Anexo 4 – Esquema Elétrico da Placa Controle.................................................114
6. REFERÊNCIAS BIBLIOGRÁFICAS............................................................................115
XV
1 INTRODUÇÃO
A comunicação hoje é, sem dúvida, uma das grandes necessidades do ser humano
desde o inicio de sua existência. As civilizações ao redor do mundo ocuparam áreas
geograficamente cada vez mais distantes, desta forma a necessidade de uma comunicação
que cobrisse longas distâncias era um desafio efetivo. No passado, formas rudimentares de
comunicação foram utilizadas por nossos antepassados com a finalidade de encurtar as
distancias geográficas. Em 1838, Samuel F. B. Morse estabeleceu uma nova etapa nas
comunicações através de seu invento, o telegrafo 1*. A comunicação evoluiu desde então,
surgiram o telefone, o radio, a televisão, e mais recentemente, as redes de computadores
(Ethernet, Intranet e Internet). A utilização de satélites permitiu atingir cada ponto do
planeta.
* Código Morse – um gerador de pulsos elétricos manipulados por um operador transmitia as mensagens utilizando com meios de
1
As redes de computadores onde os módulos de processamento encontram-se
distantes entre si de alguns poucos metros são chamadas de confinadas, as redes cujas
distâncias encontram-se entre alguns metros e poucos quilômetros são ditas redes locais
(Local Área Networks – LANs), compreendendo hoje, distância entre 100m e 25Km. As
Redes Locais operam hoje com velocidade de 10 ou 100Mbps. Redes que cobrem
áreas que ultrapassam os limites de cidades são ditas Redes Metropolitanas ( Metropolitan
Area Networks – MANs) e, finalmente, as redes que cobrem distâncias maiores do que as
interurbanas são chamadas de Redes Geograficamente Distribuídas (Wide Area Networks
– WANs), utilizando em seus enlaces microondas e satélites.
A ligação dos computadores em rede permitiu assim uma maior eficiência dos
sistemas computacionais. As redes de computadores, hoje largamente utilizadas por
empresa e universidades (Ethernet e Intranet), alem de usuários pessoais, estabeleceram
uma forma de comunicação e compartilhamento de informação que integraram o
mundo (Internet), permitindo aos usuários fazer consultas e pesquisas, reuniões e
negócios, acesso a serviços corporativos bancários, compra e venda de produtos e
serviços, automação industrial e residencial, etc.
1.2. Justificativa
2
- Repassar experiência prática adquirida para futuros formando da área de
automação; dentre outras.
1.3. Relevância
Este projeto tem o objetivo de integrar processos de pequeno porte com baixo
custo, demonstrando uma nova opção de automação para os dias de hoje.
1.5.Objeto de estudo
3
2. PRINCÍPIOS BÁSICOS DO PROJETO
2.1. Rede
"Regular" as máquinas
Os meios físicos utilizados para interligar máquinas podem ser simples fios de
cobre, fibras óticas ou sofisticados meios de comunicação através de ondas
eletromagnéticas em diversas faixas de frequência (rádio, microondas, bluetooth, wi-fi,
etc.) que dispensam fios ou cabos. Independentemente do meio utilizado, o que realmente
importa é que as máquinas possuam um canal de comunicação.
4
A "linguagem de comunicação" das máquinas é constituída por sinais,
comparáveis ao Código Morse utilizado na telegrafia. Para que máquinas interligadas
numa rede se entendam, um determinado sinal precisa ter sempre o mesmo significado.
Por exemplo, o sinal "liga" precisa ser inequívoco, o sinal "desliga" só pode significar
desligar, ou seja, o mesmo sinal não pode ter dois ou mais significados. Este conjunto de
sinais conhecidos e padronizados é o chamado código de comunicação, uma espécie de
alfabeto. A forma de transmitir os códigos deste "alfabeto", também padronizada, é o
protocolo de comunicação. Mantendo a analogia com o alfabeto, o protocolo é que
determina se a informação será transmitida letra por letra ou em grupos de letras. Nas
comunicações digitais, onde as "letras" são os bits, é o protocolo que determina se a
transmissão é feita bit a bit ou em blocos de bits.
Nesta modalidade de ligação existe sempre uma estação mestre que coordena o
tráfico de dados das demais estações chamadas escravas. Este controle é feito através de
uma rotina de atendimento denominada "POLL-SELECT". Estas redes podem permitir
que estações escravas se comuniquem entre si diretamente ou apenas através da estação
mestre. A diferença entre estes dois modos de envio de mensagens é a complexidade do
controle. São muito utilizadas em LANs com barramento sem Hub.
5
Fig. 2.2.2 – Ligação Multiponto
As Estruturas Mistas são tipos de redes que utilizam características dos dois tipos
básicos de redes, a ligação ponto-a-ponto e multiponto, para obter redes mais complexas e
com maiores recursos. As estruturas mistas podem ser do tipo Estrela, Barra, Hierárquica,
Anel e Distribuídas.
As redes em estrela, que são as mais comuns hoje em dia, utilizam cabos de par
trançado e um hub como ponto central da rede. O hub se encarrega de retransmitir todos
os dados para todas as estações, mas com a vantagem de tornar mais fácil a localização
dos problemas, já que se um dos cabos, uma das portas do hub ou uma das placas de rede
estiver com problemas, apenas o PC ligado ao componente defeituoso ficará fora da rede,
ao contrário do que ocorre nas redes 10Base2, onde um mal contato em qualquer um dos
conectores derruba a rede inteira.
Claro que esta topologia se aplica apenas a pequenas redes, já que os hubs
costumam ter apenas 8 ou 16 portas. Em redes maiores é utilizada a topologia de árvore,
onde temos vários hubs interligados entre si por switches ou roteadores. Em inglês é usado
também o termo Star Bus, ou estrela em barramento, já que a topologia mistura
características das topologias de estrela e barramento.
6
2.2.3.2. Topologia em barras
7
Fig. 2.2.3.3 – Topologia Hierárquica ou Arvore
8
2.2.3.5. Topologia distribuída
Nesta topologia temos vários pontos de concentração, cada um com seu próprio
conjunto de terminais. As ligações só são estabelecidas entre estes pontos de
concentração, o que diminui consideravelmente o custo das linhas. Só estas linhas
precisarão ter uma capacidade muito maior de transmissão para poder atender às
requisições de comunicação exigidas pelos seus terminais.
9
Neste tipo de topologia todas as estações são interligadas duas a duas através de
um meio físico dedicado. Apesar do alto grau de paralelismo deste tipo de topologia, esta
se torna inviável economicamente principalmente em redes com grande numero de
estações fisicamente dispersas entre si, estatisticamente o custo referente a instalação
cresce com o quadrado do numero de estações a serem instaladas.
Neste tipo de topologia nem todas as estações estão fisicamente ligadas por
caminhos dedicados como na ligação totalmente conectada, porém neste tipo de ligação
existem caminhos alternativos que podem vir a serem utilizados em caso de
congestionamento ou falhas em determinadas rotas.
As mensagens trocadas entre estações que não tem ligação física dedicada podem
passar por vários nós da rede ate chegar ao seu destino.
A comunicação entre dois nos pode ser feita através de chaveamento de circuito
ou de pacotes.
10
Chaveamento de Pacotes - Neste tipo de gerenciamento, pacotes são enviados do
nodo fonte para o nodo central que o retransmite para o nodo destino no momento
apropriado.
Tab. 2.3 – Tabela de Indicação do tipo de Transmissão para cada tipo de Estrutura
Mista
A topologia em anel pode utilizar o par trançado o cabo coaxial de 50 Ohm ou ate
a fibra ótica sendo descartado cabo de 75 Ohms em função das perdas causadas pela
impedância mais alta do cabo e a utilização de mais repetidores o que encareceria os
custos.
11
2.4. Comunicação wireless (sem fio)
12
tensão), características de interface mecânica (conectores), descrição funcional de
circuitos interligados (a função de cada sinal elétrico) e alguns tipos comuns de conexões
terminal para modem. A revisão mais freqüentemente encontrada nesse padrão é chamada
RS-232C. Partes desse padrão têm sido adotadas (com vários graus de fidelidade) para
usar em comunicações seriais entre computadores e impressoras, modems e outros
equipamentos. As portas seriais do padrão IBM- PC seguem a RS-232C.
Dispositivos que usam cabos serial para sua comunicação são divididos em duas
categorias: Equipamentos de comunicação de dados (Data Communications Equipment -
DCE) e Equipamentos de dados terminal (Data Terminal Equipment - DTE). DCE são
dispositivos como modems, plotter, etc., enquanto DTE são computadores ou terminais. A
porta serial RS-232 vem em geral com conectores tipo Delta com 25 pinos (DB-25) e tipo
Delta 9 pinos (DB-9). Ambos os conectores são machos no computador, assim, é preciso
um conector fêmea no dispositivo.
13
destinadas ao uso em escritórios ditas "livre de legados" (legacy-free) são produzidas sem
circuitos RS-232. Mesmo assim, esse protocolo continua sendo utilizado em periféricos
para pontos de venda (caixas registradoras, leitores de códigos de barra ou fita magnética)
e para a área industrial (dispositivos de controle remoto). Por essa razões, computadores
para estes fins continuam sendo produzidos com portas RS-232, tanto on-board ou em
placas para barramentos PCI ou barramento ISA. Como alternativa, existem adaptadores
para portas USB, que podem ser utilizados para conectar teclados ou mouses PS/2, uma ou
mais portas seriais e uma ou mais portas paralelas.
Define uma interface balanceada, mas não define um conector físico. Fabricantes
que aderiram a este padrão usam muitos conectores diferentes, incluindo os terminais de
parafusos, DB9, DB25 com pinagem não padronizada, DB25 com padrão RS-530 e DB37
com padrão RS-449. O RS-422 é comumente usado em comunicações ponto a ponto
realizadas por um driver dual-state. As transmissões podem ir a grandes distâncias e altas
velocidades.
- Sinais: A RS422 possui sinais de comunicação TX+, RX+, TX- e RX-, sendo o
TX aquele que envia e RX o que recebe. O modo de transmissão é por diferencial
elétrico. Pode utilizar outros sinais para controle.
14
2.5.3. Padrão comunicação serial RS-485
RS-485 é semelhante ao RS-422, exceto pelo fato dos drivers associados serem
tri-state e não dual-state. Pode ser utilizado em aplicações multiponto em que um
computador controla muitos dispositivos diferentes. Até 64 dispositivos podem ser
conectados com o RS-485.
15
vezes mais rápido que uma conexão discada a 56K! Você pode até mesmo configurar sua
rede para o dobro da velocidade ("full duplex") se você precisa transmitir áudio ou vídeo
através de sua rede. Provedores de Serviço de Internet (ISPs) podem configurar suas redes
em até 1000 Mbps (Um gigabit de tráfego por segundo).
2.5.4.1. Endereço de IP
16
A partir do sistema operacional Windows 95 tornou-se possivel efetuar comunicação
entre dois computadores através da porta paralela, usando um programa nativo chamado
"comunicação direta via cabo". Esta rede é muito simples de ser implementada, bastando
apenas a utilização de um cabo DB25, conectado entre os dois computadores. É, no entanto,
necessária uma configuração específica nos cabos para que a rede possa funcionar
corretamente.
Há duas formas de se transmitir dados. Uma delas é a forma serial. Serial, como o
cognato indica, é transmitir em série, ou seja, um bit após o outro. Transmitir de forma
paralela é transmitir vários bits ao mesmo tempo. Em uma primeira impressão, a transmissão
paralela pode parecer a mais apropriada. Porém, devemos lembrar do conceito de
multiplexação.
Tal conceito, que no momento não precisa ser estudado a fundo, se baseia no fato de
comutar vários bits de forma tão rápida que eles são transmitidos por um único fio, ou seja, de
forma serial. Para quem tem raciocínio rápido, fica fácil compreender: pela forma serial a
limitação de bits é dada pela velocidade com que transmissor e receptor se chaveiam,
enquanto que na paralela, a limitação é física e dada pelo número de fios.
17
distância maior a taxa de transferência de bits, o que não acontece na comunicação em série
que é ideal para longas distâncias.
18
2.6.2 Aplicação da Porta Paralela
A porta paralela, por não possuir uma alta velocidade de transmissão, tem,
atualmente, sua aplicação limitada a impressoras e scanners. Atualmente, em caso de
transmissões rápidas, se utiliza a interface USB (Universal Serial Bus), que atinge taxas de
transmissão bem maiores. Na Eletrônica, a porta paralela pode servir para controlar qualquer
tipo de processo. Pode, por exemplo, fazer a interface entre o PC e um sensor. O sensor, ao ser
acionado, mandaria tal informação para a porta paralela e o PC procederia ao disparo de
sirenes, conectadas as saídas da porta paralela. Devemos lembrar que a corrente de saída da
porta paralela não é alta, sendo suficiente para, no máximo, acender LEDs. Para circuitos que
necessitem de maior potência, devemos utilizar buffers ou amplificadores de correntes
transistorizados.
A IBM foi uma das primeiras empresas a desenvolver a porta paralela como uma
maneira de ligar a impressora ao computador. Na altura da criação do seu computador, a
empresa queria que as impressoras produzidas pela Centronics, uma fabricante de primeira
linha de impressoras na época, fossem as impressoras padrão usadas nos seus computadores.
19
No entanto, a IBM resolveu não usar no computador a mesma interface de portas que a
Centronics usava nas suas impressoras.
É através deste conector que se estabelece a comunicação da porta paralela com interfaces
conectadas a esta. A ligação externa é efetuada através de um
conector fêmea DB25 no computador e um conector macho
no cabo DB25. Na figura estão apresentados os ditos
conectores (em cima o macho e em baixo o lado fêmea).
20
Conector Macho do Cabo Paralelo
21
No Conector DB25, cada pino recebe um nome, que está relacionado ao Registrador
que o controla.
1- Os pinos 2 a 9, denominados, da esquerda para a direita, de D0, D1, D2, D3, D4,
D5, D6 e D7 são controlados pelo Registrador de Dados (saída de dados), e a letra D indica
isso. O número que vem após a letra corresponde à posição do pino dentro do Byte.
2- Os pinos 10, 11, 12, 13 e 15, denominados S6 – Ack, S7 – Busy, S5 – Paper End,
S4 – Select Out, S3 – Error, são controlados pelo Registrador de Status (entrada de dados), e a
letra S indica isso. O número que vem após a letra corresponde à posição do pino dentro do
Byte.
Atenção: Existem pinos na Porta Paralela que trabalham com lógica invertida, isso quer dizer
que quando queremos ativar esses pinos temos que enviar um sinal lógico “0” e quando
desejamos desativar, devemos mandar um sinal lógico “1”.
22
9 Data7 In/Out Data-7 Não
18-25 Ground - - -
Os pinos de cor azul e verde servem para saída de sinal que é(5v), os de cor laranja
servem para entrada que também é(5v), e os vermelhos servem para fechar o circuito que
recebe um sinal de voltagem negativa.
23
2.6.5 Endereços da Porta Paralela
Nome da Endereço de
Endereço da Porta Descrição
Porta memória
378
LPT1 0000:0408 888 decimal Endereço base
hexadecimal
278
LPT2 0000:040A 632 decimal Endereço base
hexadecimal
Cada Registrador tem um endereço único, que não interfere nos demais. São eles:
24
A porta paralela do computador trabalha com a tecnologia TTL isso significa que
teremos que enviar/receber 0.5v ou 5v (0.5 nível baixo - 5 nível Alto) que será lido por três
tipo de registradores de controle:
isso significa que o pino S7 está em nível baixo ou seja com 0.5v, S6 nível baixo
0.5v, S5 nível alto 5v e assim por diante.
Sabemos que os pinos do DB25 S0 à S7 quando em nível alto emitem 5v, então
vamos montar um aparelho eletrônico que receba o sinal emitido pêlos pinos e ligue um
circuito. Antes de começar-mos, temos que criar um software que envie para a paralela os
números em binários. (o software está disponível em http://www.dghp.bem-
vindo.net/tutorial/paralela/paralela.html na área de Download "testaDB25")
O aparelho é formado por fios um Led e um Resistor. Uma das extremidade é conectada em
um dos pinos(S0,S1,S2,S3,S4,S5,S6,S7) a outra nos pinos terra (18,19,20,21,22,23,24,25).
Quando o pino de saída é ativado o Led do aparelho se acende indicando presença de energia.
Através desde principio você pode ampliar o circuito criando mais 7 conjunto de led's e
resistores que iram todos conectados nos pinos (S0 à S7) formando então um verdadeiro jogo
de led's ou até mesmo montar qualquer circuito eletrônico que será startado pelo computador.
Abaixo o esquema do aparelho.
25
2.6.6.2 Circuitos para receber sinal para a Porta Paralela
Como foi mencionado, a porta paralela recebe/envia 0v ou 5v, então o que temos que
fazer é saber quais são os pinos que recebem sinal e qual o registrador que faz a leitura. Se
você voltar algumas paginas será visto que os pinos responsáveis para o recebimento de sinal
são os pinos 10,11,12,13,15 e o registrador que faz a leitura é o 379h. Tendo tudo isso
definido é só criar um circuito e um programa que faça a leitura. Vamos começar pelo
programa(o software está disponível em http://www.dghp.bem-
vindo.net/tutorial/paralela/paralela.html na área de Download "LE-DB25”). Agora vamos
fazer um circuito extremamente simples que envia sinal para dentro do computador. Você irá
precisar de uma pilha pequena e dois fios (que iremos chamar de A e B). Conecte os dois fios
(A e B) no polo negativo da pilha, uma extremidade você coloca no terra do DB25 e a outra
em qualquer pino responsável pelo recebimento de sinal e então execute o programa. Você ira
notar que o programa ira retornar um numero diferente, cada vez que você mudar o fio B de
pino. Com esse principio você pode indicar para o computador pôr exemplo que um alarme
esta ligado.
26
2.7 Introdução ao Tratamento da Piscina
Possuir e cuidar de uma piscina pode custar pouco e consumir menos tempo do que
você imagina.
Para manter uma água limpa, saudável e cristalina, existem fatores essenciais que
precisam ser atendidos, os quais chamados de tratamento físico e tratamento químico.
Vale a pena lembrar que tratar corretamente da piscina é mais do que simplesmente
acrescentar cloro.Com este manual, você verá que é muito fácil manter a água da piscina
saudável e cristalina.
27
2.7.2 Limpeza Física
28
Pré-filtro: Tem a função de reter a sujeira mais grossa no cesto plástico que está
dentro da peça que o envolve. Devemos evitar a colocação de produtos no cesto do pré-filtro
(com exceção do Auxiliar de Filtração).
Registros: Peças colocadas nos tubos de PVC que permitem ou não a passagem
de água.
Visor: Esta é uma peça importante para operação do filtro, pois através do visor
transparenteé possível observar se a função “retrolavar” já está finalizada, já que a água
deverá passar pelo mesmo.
O sistema de filtração limpa a água através da areia que está dentro do filtro, retendo
partículas de sujeira como cabelos, folhas, restos de protetor solar, algas e outras impurezas
que reduzem aação dos produtos químicos. A filtração de 6 a 12 horas pode representar até
50% do tratamento ideal da piscina.
Mantenha o filtro em perfeita ordem e assegure-se que ele fique ligado o tempo
suficiente para filtrartoda água da piscina. Consulte o fabricante do filtro para saber o tempo
exato que ele deve ser mantidoligado. Esse período pode variar de 6 a 12 horas, que é o tempo
necessário para passar todo ovolume da água da piscina pelo sistema de filtração. Vale a pena
29
lembrar que o consumo de energiaelétrica do sistema equivale a cerca de cinco por cento do
consumo mensal de um domicílio. Para suatranqüilidade, recomendamos o uso de um timer.
Assim, você não precisará se preocupar em ligar e desligar o motor do filtro. O timer é um
temporizador automático, em que a programação do motor do filtro é feita de acordo com a
sua conveniência.
Não esqueça de desligar o filtro toda vez que mudar a posição da válvula e de
utilizar somente areia adequada para filtros da piscina.
Para que o manuseio dos registros do sistema de circulação da piscina fique mais
fácil,aconselhamos identificação através da colocação de um adesivo ou placa que identifique
os respectivos registros.
O filtro possui geralmente, 6 funções: filtrar, retrolavar (ou lavar), pré-filtrar (ou
enxaguar),recircular, drenar e fechar (ou livre).
2.7.5 Filtrar
Aspiração
30
Skimmer (coadeira) se
houver
Esse procedimento visa à retirada de impurezas de areia do filtro e deve ser feito
pelo menos uma vez por mês. A água percorre o caminho contrário à filtração, promovendo a
limpeza da areia. Essa água é descartada no esgoto. Observe o visor transparente no cano do
esgoto, para verificar se água está passando limpa (esta operação deve durar
aproximadamente 3 minutos).Após a retrolavagem, coloque a válvula do filtro na posição Pré-
filtrar (ou Enxaguar) por aproximadamente 1 minuto.
Esgoto
31
Fechar Skimmer (Coadeira) – se houver
Registro
Retorno de Água filtrada ou Recirculada
OBS.: Se o filtro possuir manômetro, este indicará quando deverá ser feita a
retrolavagem.Após cada retrolavagem, aplique o Auxiliar de Filtração já que o produto é
descartado no esgoto juntamente com a sujeira.
Esta operação é obrigatória após a lavagem da areia do filtro, pois uma pequena
parte da sujeira fica presa nele. Observe o visor transparente para verificar se a água esta
passando limpa (esta operação deve durar aproximadamente 1 minuto).
Aspiração
Esgoto
32
ou Recirculada
OBS.: Caso seu filtro não possua essa função, coloque a válvula na posição Filtrar
com o retorno fechado e o Registro de Esgoto aberto.
2.7.8. Recircular
Essa função somente deve ser usada no caso da utilização de Sulfato de Alumínio
e/ou tratamento que exija uma redução de pH em filtros feito de ferro, pois isso poderá
provocar corrosão dos mesmos.
33
Colocar a válvula seletora do Filtro na posição: RECIRCULAR
Ralo de fundo
Skimmer (Coadeira) – se
houver
2.7.9 Drenar
34
Esgoto
Skimmer (Coadeira) – se
houver
2.7.10 Fechar
Posição utilizada somente para detectar vazamento ou quando a piscina não for
utilizada por um período de tempo muito longo. É necessário também fechar todos os
registros.
35
2.7.11 Como Utilizar o Aspirador
Essa operação deve ser realizada quando não existir muita sujeira depositada
no fundo da piscina, pois a sujeira é aspirada e fica retida na areia do filtro. Neste caso,
a água volta limpa pelo bocal de retorno.
Skimmer (Coadeira) – se
houver
Esgoto
OBS.: Pode-se também usar um aspirador automático com timer. Nesse caso, regule
os registros (ralo de fundo e coadeira – se houver).
Esse tipo de aspiração deve ser realizado quando houver grande quantidade de
sujeira no fundo da piscina. A sujeira aspirada não passa pela areia do filtro; é enviada direto
para o esgoto.
36
Colocar a válvula seletora do Filtro na posição: DRENAR
Esgoto
Skimmer (Coadeira) – se
houver
OBS.: A cada operação de retrolavagem o produto deverá ser reposto, pois o mesmo
é descartado juntamente com a sujeira.
37
Caso isso ocorra, contate um técnico especializado, pois o filtro pode estar com
problemas.
O Pré-Filtro serve para reter as sujeiras mais grossas (folhas, insetos, etc)
impedindo, assim,a passagem dessas sujeiras para o cabeçote ou para a areia do filtro. Ele está
localizado antes da bomba. É importante mantê-lo sempre limpo.
O jeito mais prático e eficiente de efetuar essa medição é através da Fita Teste ou
Estojo de Teste.
Além de aprender passo a passo o ajuste destes três elementos, você também irá
aprender como calcular a dosagem de todos os produtos químicos necessários no tratamento
da água da piscina. Serão abordados os seguintes temas: como prevenir e eliminar algas,
como clarear a água da piscina, como resolver os problemas mais comuns: água turva, água
colorida, manchas no revestimento, entre outros.
38
2.7.14 Como calcular o volume de água da piscina
Saber o volume de água da piscina é essencial para seu tratamento. Isso se deve ao
fato de que a quantidade de produtos químicos necessária para tratar da piscina é determinada
pelo seu volume de água.Uma vez que você já esteja familiarizado com esse volume, você
pode rapidamente determinar a quantidade correta de produtos químicos.
1º Þ Profundidade Média: parte rasa + parte funda = 0,80 + 1,5= 2,3. Divide-se o
valor encontrado por 2. Þ 2,3 : 2 = 1,15m.
39
2.7.15 Como calcular a dosagem necessária de produtos químicos.
Vamos supor que a piscina possua um volume de água de 40.000 litros. Isso
corresponde a 40 m3 de água. Como você verá adiante, será necessário adicionar 5 ml de
Algicida Manutenção para cada 1.000 litros d’água (1 m3).
Alcalinidade Total
Alcalinidade Total acima de 120 ppm pode causar turbidez na água e formação
de incrustações brancas, cinzentas ou marrons nos tubos e em outras partes do sistema de
circulação de água.
40
Utilizando a Fita Teste: Mergulhe a fita na água e remova imediatamente.
Segure a fita por 15 segundos. Não chacoalhe o excesso de água na fita. Compare a cor da fita
correspondente à Alcalinidade Total com as cores impressas na embalagem.
Utilizando o Estojo de teste: Lave a proveta com água da piscina e encha até a
marca. Coloque 5 gotas do Indicador de Alcalinidade e agite para homogeneizar.
Obs.: Se a cor não sofrer alteração, a Alcalinidade é igual à zero. Adicione o Reagente de
Alcalinidade, gota a gota, contando o número de gotas adicionadas. Após a adição de cada
gota, mexa para homogeneizar.Quando observar a mudança da cor para outra cor (vermelha,
rosa ou amarela),multiplique o número de gotas adicionadas por 10. Exemplo: total de gotas
adicionadas = seis (6 x 10 = 60). Alcalinidade = 60 ppm.
41
O pH (potencial de hidrogênio) é uma medida que verifica se a água esta ácida (pH
baixo),neutra (pH 7,0) ou básica (pH alto). Sua escala varia de 0,0 a 14,0.
Em piscina, o pH deve ser mantido entre 7,0 e 7,4. Isso assegurará a interação
química do cloro com as bactérias que ele deve eliminar. O ideal é mantê-lo na neutralidade,
ou seja, em 7,0. Um pH abaixo de 7,0 poderá causar irritação na pele e nos olhos, corrosão
dos equipamentos e gerar um consumo maior de cloro.
42
faixa ideal (7,0 – 7,4) e a água turva, utilize o Clarificante e deixe filtrando por 6 a 12
horas,ou de acordo com as instruções do fabricante do filtro.
Cloro Livre
O fato da piscina estar cristalina não significa que ela esteja saudável, pois as
bactérias são microscópicas. A piscina só estará realmente protegida se houver a presença de
Cloro Livre.
43
saindo da água. A fração residual de cloraminas – normalmente as tri-cloroaminas -pode
permanecer indefinidamente na água da piscina.
Como em sua estrutura molecular as tri-cloro-aminas possuem o cloro, este pode ser
medido erroneamente como sendo Cloro Livre Disponível, porém, na verdade,trata-se de um
“cloro residual” de nenhum efeito sanitizante. A este termo, denomina-se: Cloro Combinado.
O teor de Cloro Livre Disponível em uma piscina deve ser sempre muitas vezes
maior que o teor de Cloro Combinado, pois esta é a única garantia que o banhista terá de que
a água da sua piscina estará realmente sanitizada.
O Cloro Livre Disponível, este sim, é o indicativo de que a piscina não só está
sanitizada, como também possui uma “reserva” de cloro para eliminar futuras contaminações
que venham a ocorrer.
44
Tratamento de Choque (Supercloração) É a adição de cloro na água da piscina
em uma quantidade superior àquela normalmente utilizada.É recomendado utilizar esse
recurso quando:
45
acusada. O excesso de ácido cianúrico em água de piscina poderá ser medido através da Fita
Teste e do Estojo apropriado.
Caso isso seja confirmado, ou seja, se a água da piscina realmente apresentar níveis
maiores do que 50 ppm de ácido cianúrico, a única solução é drenar parcialmente a água da
piscina e repô-la com água “nova”.
Retrolavar o filtro.
46
um balde com água da piscina.Medir o nível de estabilizador de cloro (ácido cianúrico)
presente na água da piscina a cada 6 meses com a Fita Teste ou com o Estojo Apropriado.
2.7.22 Cuidados:
Não coloque cloro granulado no flutuador, pois isso poderá causar uma
explosão se houver resíduos de tricloro no mesmo.
Flutuador 4 em 1
47
Combinando benefícios como água limpa, pura e cristalina por até um mês e pouco
esforço para o tratamento da piscina, o Flutuador 4 em 1 é um tratamento completo que reúne
quatro funções em um só produto: Cloro, Algicida, Clarificante e Cloro de ação imediata.
Com ação contínua, que indica a hora da troca e é ajustável para vários tamanhos de
piscina, é indicado para a eliminação dos microorganismos da água da piscina, para a
oxidação da matéria orgânica e dos metais nela dissolvidos, para a inibição de odores
desagradáveis e para a prevenção da transmissão de doenças infecciosas, além de clarificar a
água e prevenir o aparecimento de algas.
Fazer uma dosagem de reforço de 4g de Cloro Granulado para cada 1000 litros
(1m3), uma vez por semana.
48
Algas são microorganismos que se desenvolvem na água. A contaminação da água
por esses microorganismos se dá através das chuvas, do vento e da poeira. As principais
características da presença das algas na piscina são a cloração alterada da água (água verde,
amarela, preta, etc) e o fundo e/ou as paredes da piscina escorregadios.
É bom salientar que, para a total eficácia destes produtos, a Alcalinidade Total e o
pH precisam estar previamente ajustados.
Obs: Utilização semanal como manutenção, para manter a água da piscina mais
cristalina.
49
Medir a alcalinidade Total e, se necessário, ajustá-la para faixa ideal (80-120
ppm).
Desligar o filtro.
Desligar o filtro.
50
2.7.24 Dicas e Recomendações
Evitar o uso do Sulfato de Alumínio para decantar a piscina, visto que empedra
a areia do filtro comprometendo o seu funcionamento, além de reduzir o pH.
51
Ao abastecer a piscina pela primeira vez (ou quando a água for reposta), e se água
utilizada for de rede tratada, porém apresentando uma tonalidade esverdeada, deve-se seguir
os passos do Tratamento n° 1.
Tratamento n°1
Deixar a água em repouso por 12 horas. Após esse período, aspirar o fundo da
piscina filtrando (com pouca sujeira no fundo) ou drenando, caso o nível de sujeira seja
realmente muito alto.
Ao abastecer a piscina pela primeira vez (ou quando a água for reposta) e a água
utilizada for de rede tratada, porém já estando cristalina, deve-se seguir os passos do
Tratamento nº 2; normalmente ela está com aparência bonita, mas pode estar sem Cloro Livre,
desta forma não está protegida.
Tratamento n°2
52
Aguardar 1 hora e realizar uma supercloração com Cloro Granulado
Porém, se a água utilizada para o abastecimento da piscina for de poço, mina, lago,
etc., será necessário realizar o tratamento n° 3, pois esse tipo de água contém um alto nível de
metais (ferro, cobre, manganês, etc) que poderão reagir com o cloro a manchar a piscina.
Estes Tratamentos têm como objetivo deixar a piscina pronta para uso.
Tratamento da piscina com Água do Poço, Mina, Lago, etc. (tratamento para
eliminar metais).
Tratamento n°3
53
2. Escove diariamente a área manchada por um período de 5 a 7 dias. Retrolavar
o filtro diariamente enquanto durar este procedimento.
Causa provável:
Solução Recomendada
54
o Aspirar a piscina. Caso a piscina esteja muito suja, aspirar drenando.
Solução Recomendada
- Medir a Alcalinidade Total e, se necessário, ajustá-la para a faixa entre 80-120 ppm.
- Ajustar o pH para a faixa entre 7,0 e 7,4 utilizando o Redutor de Alcalinidade e pH.
- Adicionar o Clarificante.
55
PROBLEMA Agua opaca e sem brilho, com Alcalinidade Total e pH
ajustados.
Causa Provável:
o Partículas de poeira.
Solução Recomendada
o Adicionar o Clarificante.
Causa Provável:
Obs: Quando os banhistas reclamam que a água esta com “um forte cheiro de
cloro”, na verdade, isso significa que a água está com falta de cloro.
Solução Recomendada
56
PROBLEMA Água turva com cor da terra.
Causa Provável:
Solução Recomendada
Causa Provável:
Solução Recomendada
o Esfregar as bordas da piscina com uma esponja macia, não abrasiva, com o
produto Limpa Bordas.
Causa Provável:
Solução Recomendada
57
o Fazer uma supercloração com Cloro Granulado.
Causa Provável:
Solução Recomendada
Causa Provável:
o pH desajustado.
Solução Recomendada
- Medir a Alcalinidade Total e, se necessário ajustá-la para a faixa entre 80-120 ppm.
Causa Provável:
Solução Recomendada
58
PROBLEMA Mancha nos azulejos e em piscinas de fibra e vinil, provocadas
por metais.
Causa Provável:
Solução Recomendada
Causa Provável:
Solução Recomendada
59
PROBLEMA Espuma na água.
Causa Provável:
Solução Recomendada
Causa Provável:
o Incrustações.
Solução Recomendada
o Esse tratamento poderá ter a duração de uma semana, durante qual a piscina
deverá ficar interditada (sem banhista e sem qualquer tipo de tratamento). Será necessário
apenas recircular a água da piscina por 6 horas, todos os dias durante essa semana e conferir
se o pH continua 6,5.
o Escovar a região onde está localizada a mancha. Nunca utilizar esponja de aço
e esponja dupla-face.
60
o Caso a mancha persista, deixar a piscina com o pH baixo (6,5) até a remoção
completa com uma simples escovação.
o Para que a piscina volte a ter residual de Cloro Livre entre 1 a 3 ppm, realizar
uma supercloração com Cloro Granulado.
2.8 Linux
2.8.1 História
61
Linus Torvalds começou o desenvolvimento do núcleo como um projeto particular,
inspirado pelo seu interesse no Minix, um pequeno sistema UNIX desenvolvido por Andrew
S. Tanenbaum. Ele limitou-se a criar, nas suas próprias palavras, "um Minix melhor que o
Minix" ("a better Minix than Minix"). E depois de algum tempo de trabalho no projecto,
sozinho, enviou a seguinte mensagem para comp.os.minix:
Curiosamente, o nome Linux foi criado por Ari Lemmke, administrador do site
ftp.funet.fi que deu esse nome ao diretório FTP onde o núcleo Linux estava inicialmente
disponível.[3] (Linus tinha-o batizado como "Freax", inicialmente)[4]
62
periféricos sem a necessidade de se instalar os drivers de som, vídeo, modem, rede, entre
outros.
2.8.3 Arquitetura
2.8.4 UNIX
Embora Linus Torvalds não tenha tido como objetivo inicial tornar o Linux um
sistema portável, ele evoluiu nessa direção. Linux é hoje um dos núcleos de sistemas
operativos mais portáveis, correndo em sistemas desde o iPaq (um computador portátil) até o
IBM S/390 (um denso e altamente custoso mainframe).
63
Os esforços de Linus foram também dirigidos a um diferente tipo de portabilidade.
Portabilidade, de acordo com Linus, era a habilidade de facilmente compilar aplicações de
uma variedade de código fonte no seu sistema; consequentemente, o Linux originalmente
tornou-se popular em parte devido ao esforço para que os códigos-fonte GPL ou outros
favoritos de todos corressem em Linux.
Inicialmente, Torvalds lançou o Linux sob uma licença de software que proibia
qualquer uso comercial. Isso foi mudado de imediato para a GNU General Public License.
Essa licença permite a distribuição e mesmo a venda de versões possivelmente modificadas
do Linux mas requer que todas as cópias sejam lançadas dentro da mesma licença e
acompanhadas do código fonte.
Apesar de alguns dos programadores que contribuem para o núcleo permitirem que
o seu código seja licenciado com GPL versão 2 ou posterior, grande parte do código (incluído
as contribuições de Torvalds) menciona apenas a GPL versão 2. Isto faz com que o núcleo
como um todo esteja sob a versão 2 exclusivamente, não sendo de prever sua adoção da nova
GPLv3.
64
Entre os sistemas de arquivos suportados pelo Linux, podemos citar FAT, NTFS,
JFS, XFS, HPFS, Minix e ISO 9660 (sistema de ficheiros usado em CD-ROMs), este último
também com as extensões RRIP (IEEE P1282) e ZISOFS[6]. Alguns sistemas de ficheiros
nativos são, dentre outros, Ext2, Ext3, Ext4, ReiserFS e Reiser4.[7] Alguns sistemas de
ficheiros com características especiais são SWAP, UnionFS, SquashFS, Tmpfs, Aufs e NFS,
dentre outros.
Logo que Linus Torvalds passou a disponibilizar o Linux, ou seja na sua versão
0.01, já havia suporte ao disco rígido, tela, teclado e portas seriais, o sistema de arquivos
adotava o mesmo layout do Minix (embora não houvesse código do Minix no Linux), havia
extensos trechos em assembly, e ela já era capaz de rodar o bash e o gcc.
65
A maioria dos sistemas inclui ferramentas e utilitários baseados no BSD e
tipicamente usam XFree86 ou X.Org para oferecer a funcionalidade do sistemas de janelas X
— interface gráfica. Assim como também oferecem ferramentas desenvolvidas pelo projeto
GNU.
2.8.7 Distribuições
66
disquetes) são usadas para recuperação de sistemas danificados ou em monitoramento de
redes de computadores.
67
De entre as distribuições consideradas mais difíceis de gerir (por preferirem
assegurar a estabilidade tecnológica em detrimento da interface de utilizador), destacam-se a
Debian, Gentoo e Slackware.
Um programa, assim como toda obra produzida atualmente, seja ela literária,
artística ou tecnológica, possui um autor. Os Direitos sobre a idéia ou originalidade da obra do
autor, que incluem essencialmente distribuição, reprodução e uso é feito no caso de um
programa através de sua licença.
O Linux oferece muitos aplicativos de open source, contudo nem todos podem ser
considerados programas livres, dependendo exclusivamente sob qual licença estes programas
são distribuídos. Os programas distribuídos sob tais licenças possuem as mais diversas
funcionalidades, como desktops, escritório, edição de imagem e inclusive de outros sistemas
operacionais.
Linux foi o nome dado ao núcleo de sistema operacional criado por Linus Torvalds.
Por extensão, sistemas operacionais que usam o núcleo Linux são chamados genericamente de
Linux. Entretanto, a Free Software Foundation afirma tais sistemas operacionais são, na
verdade, sistemas GNU, e o nome mais adequado para tais sistemas é GNU/Linux, uma vez
que grande parte do código-fonte dos sistemas operacionais baseados em Linux são
ferramentas do projeto GNU.[9]
68
Há muita controvérsia quanto ao nome Eric Raymond afirma, no Jargon File, que a
proposta da FSF só conseguiu a "aceitação de uma minoria" e é resultado de uma "disputa
territorial".[10] Linus Torvalds afirma que consideraria "justo" que tal nome fosse atribuído a
uma distribuição do projeto GNU, mas que chamar os sistemas operacionais Linux como um
todo de GNU/Linux seria "ridículo".[11] Linus disse não se importar sobre qual o nome
usado, considera a proposta da GNU como "válida" ("ok") mas prefere usar o termo "Linux".
[12]
O símbolo do software foi escolhido pelo seu criador, que achou a foto de um
pinguim na internet. [13]
Tux.
Depois disso, várias tentativas foram feitas numa espécie de concurso para que a
imagem de um pingüim servisse aos propósitos do Linux, até que alguém sugeriu a figura de
um "pingüim sustentando o mundo". Em resposta, Linus Torvalds declarou que achava
interessante que esse pingüim tivesse uma imagem simples: um pingüim "gordinho" e com
expressão de satisfeito, como se tivesse acabado de comer uma porção de peixes. Torvalds
também não achava atraente a idéia de algo agressivo, mas sim a idéia de um pingüim
simpático, do tipo em que as crianças perguntam "mamãe, posso ter um desses também?".
69
Ainda, Torvalds também frisou que trabalhando dessa forma, as pessoas poderiam criar várias
modificações desse pingüim. Isso realmente acontece. Quando questionado sobre o porquê de
pingüins, Linus Torvalds respondeu que não havia uma razão em especial, mas os achava
engraçados e até citou que foi bicado por um "pingüim assassino" na Austrália e ficou
impressionado como a bicada de um animal aparentemente tão inofensivo podia ser tão
dolorosa.
2.9 Apache+PHP
2.9.1.1 Introdução
Pelo menos até o desenvolvimento deste artigo, o Apache era o servidor Web mais
usado no mundo, tendo um domínio de mais de 60%. Por ser tão importante assim, nada
melhor do que entender um pouco o Apache, conhecer sua história e saber como começar a
utilizá-lo. É isso que você verá nas próximas linhas.
Ao acessar qualquer site, há um servidor por trás daquele endereço responsável por
disponibilizar as páginas e todos os demais recursos que você pode acessar. Assim, quando
você envia um e-mail através de um formulário, coloca uma mensagem em um fórum de
discussão, faz uma compra on-line, etc, um servidor Web (ou um conjunto de servidores) é
responsável por processar todas essas informações.
Sendo mais claro, um servidor Web é um computador que processa solicitações HTTP
(Hyper-Text Transfer Protocol), o protocolo padrão da Web. Quando você usa um navegador
de internet para acessar um site, este faz as solicitações devidas ao servidor Web do site
através de HTTP e então recebe o conteúdo correspondente. No caso do Apache, ele não só
executa o HTTP, como outros protocolos, tais como o HTTPS (O HTTP combinado com a
camada de segurança SSL - Secure Socket Layer), o FTP (File Transfer Protocol), entre
outros.
Como servidor Web, o Apache é o mais conhecido e usado. Os motivos incluem sua
excelente performance, segurança, compatibilidade com diversas plataformas e todos os seus
recursos.
70
O servidor Apache (ou Apache Server) surgiu no National Center of Supercomputing
Applications (NCSA) através do trabalho de Rob McCool. Ao sair da NCSA, McCool parou
de trabalhar no software (que nessa época recebia justamente a denominação NCSA) e então
várias pessoas e grupos passaram a adaptar o servidor Web às suas necessidades. No entanto,
foram Brian Behlendorf e Cliff Skolnick os principais responsáveis pela retomada do projeto,
contando logo em seguida com o apoio de Brandon Long e Beth Frank. Estes últimos tinham
a tarefa de continuar com o desenvolvimento do servidor, mas pela NCSA. Não demorou
muito para que eles se juntassem ao Apache Group.
O servidor Apache teve sua primeira versão oficial (0.6.2) lançada em 1995. No
momento em que este artigo era escrito, a última versão era a 2.2.3/2.2.4. De 1995 até hoje
houve várias mudanças no projeto. Talvez, a mais importante tenha sido o Shambhala, uma
arquitetura para o Apache desenvolvida por Robert Thau. O Shambhala agradou tanto na
época (principalmente por seu melhor gerenciamento de memória) que acabou sendo
incorporado definitivamente ao servidor, tirando de cena a base existente até então. Surgia a
versão 0.8.8, que tinha, além do Shambhala, recursos da versão 0.7.x. Após uma série de
aperfeiçoamentos, testes e de uma documentação nova (feita por David Robinson), o Apache
1.0 foi lançado em dezembro de 1995.
71
Além de estar disponível para o Linux (e para outros sistemas operacionais baseados
no Unix), o Apache também conta com versões para o Windows, para o Novell Netware e
para o OS/2, o que o torna uma ótima opção para rodar em computadores obsoletos (desde
que este atenda aos requisitos mínimos de hardware).
O servidor Apache é capaz de executa código em PHP, Perl, Shell Script e até em
ASP e pode atuar como servidor FTP, HTTP, entre outros. Sua utilização mais conhecida é a
que combina o Apache com a linguagem PHP e o banco de dados MySQL (combinação usada
aqui no InfoWester, por exemplo).
- Possui suporte a scripts cgi usando linguagens como Perl, PHP, Shell Script, ASP,
etc;
- Personalização de logs;
- Mensagens de erro;
- Suporte a virtual hosting (é possível servir 2 ou mais páginas com endereços/ portas
diferentes através do mesmo processo ou usar mais de um processo para controlar mais de um
endereço);
72
- Suporte a IP virtual hosting;
- Suporte a servidor Proxy ftp e http, com limite de acesso, caching (todas
flexivelmente configuráveis);
2.9.2 PHP
2.9.2.1 Historico
A linguagem surgiu por volta de 1994, como um pacote de programas CGI criados por
Rasmus Lerdorf, com o nome Personal Home Page Tools, para substituir um conjunto de
scripts Perl que ele usava no desenvolvimento de sua página pessoal. Em 1997 foi lançado o
novo pacote da linguagem com o nome de PHP/FI, trazendo a ferramenta Forms Interpreter,
um interpretador de comandos SQL.
Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o
primeiro recurso de orientação a objetos, que dava poder de alcançar alguns pacotes, tinha
herança e dava aos desenvolvedores somente a possibilidade de implementar propriedades e
métodos.
Pouco depois, Zeev e Andi Gutmans, escreveram o PHP 4, abandonando por completo
o PHP 3, dando mais poder à máquina da linguagem e maior número de recursos de
orientação a objetos. O problema sério que apresentou o PHP 4 foi a criação de cópias de
objetos, pois a linguagem ainda não trabalhava com apontadores ou handlers, como são as
linguagens Java , Ruby e outras.
O problema fora resolvido na versão atual do PHP, a versão 5, que já trabalha com
handlers. Caso se copie um objeto, na verdade copiaremos um apontador, pois, caso haja
73
alguma mudança na versão original do objeto, todas as outras também sofrem a alteração, o
que não acontecia na PHP 4.
Construir uma página dinâmica baseada em bases de dados é simples com PHP, (em
parte, vale lembrar), este provê suporte a um grande número de bases de dados: Oracle,
Sybase, PostgreSQL, InterBase, MySQL, SQLite, MSSQL, Firebird, etc., podendo abstrair o
banco com a biblioteca ADOdb, entre outras.
PHP tem suporte aos protocolos: IMAP, SNMP, NNTP, POP3, HTTP, LDAP, XML-
RPC, SOAP. É possível abrir sockets e interagir com outros protocolos. E as bibliotecas de
terceiros expandem ainda mais estas funcionalidades.
Características:
74
Velocidade e robustez
Tipagem fraca
2.9.2.3 PHP 5
2.9.2.5 Visibilidade
75
2.9.2.6 Polimorfismo
No polimosfismo por inclusão um objeto pode ser visto como pertencendo a diferentes
classes que não precisam ser disjuntas. O PHP adota esse tipo de polimorfismo, pois é uma
linguagem orientada a objeto que permite recursos de herança
O polimorfismo por sobrecarga, no qual mais de um método tem o mesmo nome, mas
assinaturas diferentes, não é suportado pelo PHP.
76
2.9.2.10 Poliformismo por Coercao
2.10 PostgreSQL
2.10.1 Características
Consultas complexas;
Chaves estrangeiras;
Integridade transacional;
Gatilhos;
Visões;
77
2.10.2 Histórico
Entretanto, devido ao fato do seu código fonte estar sob uma licença BSD, o seu
desenvolvimento foi continuado. Em 1994, dois estudantes de Berkeley, Andrew Yu e Jolly
Chen, adicionaram um interpretador SQL para substituir a linguagem QUEL (desenvolvida
para o Ingres) e o projeto foi renomeado para Postgres95. Com a divulgação de seu código
pela Internet, Postgres95 iniciou uma nova vida como software open source.
78
Em agosto de 1996, Marc Fournier, Bruce Momjian e Vadim B. Mikheev lançaram a
primeira versão externa da Universidade de Berkeley e deram início à tarefa de estabilizar o
código herdado. Também em 1996, o projeto foi renomeado para PostgreSQL a fim de refletir
a nova linguagem de consulta ao banco de dados: SQL. A primeira versão de PostgreSQL, a
6.0, foi liberada em janeiro de 1997. Desde então, um grupo de desenvolvedores e de
voluntários de todo o mundo, coordenados pela Internet, têm mantido o software e
desenvolvido novas funcionalidades.
Em maio de 2000 foi liberada a versão 7.0. As versões 7.x trouxeram as seguintes
novas funcionalidades: Write-Ahead Log (WAL), esquemas SQL, outer joins, suporte a IPv6,
indexação por texto, suporte melhorado a SSL e informações estatísticas do banco de dados.
A versão 8.0 foi lançada em janeiro de 2005 e entre outras novidades, foi a primeira
a ter suporte nativo para Microsoft Windows (tradicionalmente, o PostgreSQL só rodava de
forma nativa em sistemas Unix e, em sistemas Windows - através da biblioteca Cygwin).
Dentre as muitas novidades da versão 8.x, pode-se destacar o suporte a tablespaces,
savepoints, point-in-time recovery, roles e Two-Phase Commit (2PC). Em julho de 2009 foi
lançada a versão mais recente: 8.4.
79
As ferramentas utilizadas para o apoio ao desenvolvimento são o sistema de gestão
de fontes CVS (Concurrent Version System), listas de discussão, servidor de news e salas de
bate-papo (IRC).
80
vários países e universidades de prestígio mundial. Existe uma lista dos principais usuários no
Brasil e no mundo e, também, há alguns estudos de caso de aplicações que utilizam o
PostgreSQL.
2.11 HTML
81
A linguagem foi definida em especificações formais na década de 1990, inspiradas
nas propostas originais de Tim Berners-Lee em criar uma linguagem baseada em SGML para
a Internet. A primeira publicação foi esboçada por Berners-Lee e Dan Connolly, e publicada
em 1993 na IETF como uma aplicação formal para o SGML (com uma DTD em SGML
definindo a gramática). A IETF criou um grupo de trabalho para o HTML no ano seguinte, e
publicou o HTML 2.0 em 1995. Desde 1996, as especificações HTML vêm sendo mantidas,
com o auxílio de fabricantes de software, pela World Wide Web Consortium (W3C).[1]
Apesar disso, em 2000 a linguagem tornou-se também uma norma internacional (ISO/IEC
15445:2000). A última especificação HTML lançada pela W3C foi a recomendação HTML
4.01, publicada no final de 1999. Uma errata ainda foi lançada em 2001.
Desde a publicação do HTML 3.5 no final de 1997, o grupo de trabalho da W3C tem
cada vez mais — e de 2002 a 2006, de forma exclusiva — focado no desenvolvimento do
XHTML, uma especificação HTML baseada em XML que é considerada pela W3C como um
sucessor do HTML.[2][3][4] O XHTML faz uso de uma sintaxe mais rigorosa e menos
ambígua para tornar o HTML mais simples de ser processado e estendido.
2.11.2 Etiquetas
<etiqueta>...</etiqueta>
<etiqueta>
<HR color="red">
No qual:
82
HR = comando que desenha uma barra horizontal
red = valor do atributo color, que é a cor da barra que será desenhada
Cada comando tem seus atributos possíveis e seus valores. Um exemplo, é o atributo
size que pode ser usado com o comando FONT, com o HR mas que não pode ser usado com
o comando BODY. Isso quer dizer que devemos saber exatamente quais os atributos e valores
possíveis para cada comando.
Os documentos em HTML são arquivos de texto simples que podem ser criados e
editados em qualquer editor de textos comum, como o Bloco de Notas do Windows, ou o
TextEdit, do Macintosh. Para facilitar a produção de documentos, no mercado existem
editores HTML específicos, com recursos sofisticados, que facilitam a realização de tarefas
repetitivas, inserção de objetos, elaboração de tabelas e outros recursos (Ver lista abaixo).
Basicamente dividem-se em dois tipos:
83
</head>
<body>
texto,
imagem,
links,
...
</body>
</html>
As etiquetas HTML não são sensíveis à caixa, portanto tanto faz escrever <HTML>,
<Html>, <html> ou <HtMl>.
2.11.5 Cabeçalho
84
<link>: define ligações da página com outros arquivos como feeds, CSS,
scripts, etc.
Obs: as etiquetas <style> e <script> servem tanto para delimitar o espaço usados
pelos códigos na página quanto para invocar códigos existentes em outros arquivos externos.
2.11.6 Corpo
Dentro do corpo podemos encontrar outras várias etiquetas que irão moldar a página,
como por exemplo:
<table>: cria uma tabela (linhas são criadas com <TR> e novas células com
<TD>. Já os cabeçalhos de coluna são criados com a etiqueta <TH>.)
<img>: imagem.
85
<a>: hiper-ligação para um outro local, seja uma página, um e-mail ou outro
serviço.
<textarea>: caixa de texto (com mais de uma linha); estas caixas de texto são
muito usadas em blogs, elas podem ser auto selecionáveis e conter outros códigos a serem
distribuídos.
<cite>: citação
<address>: endereço
2.11.7 Hiperligações
<a name="nome">texto</a>
Em que nome e texto podem ser substituídos por o que se desejar. Depois usa-se
<a href="#nome"> </a> para hiperligar a este "anchor".
86
2.12 Linguagem C
C é uma linguagem de programação compilada de propósito geral, estruturada,
imperativa, procedural, de alto nível, padronizada pela ISO, criada em 1972, por Dennis
Ritchie, no AT&T Bell Labs, para desenvolver o sistema operacional Unix (que foi
originalmente escrito em Assembly).[1]
2.12.1 História
Ken Thompson e Dennis Ritchie (da esquerda para direita), os criadores das
linguagens B e C, respectivamente.
2.12.2 K&R C
87
Biblioteca padrão de E/S;
Campos de nome struct num espaço de nome separado para cada tipo struct;
Enumerações;
88
2.12.3 ANSI C e ISO C
2.12.4 C99
Funções em linha
89
Remoção de restrições sobre a localização da declaração de variáveis (como
em C++)
Adição de vários tipos de dados novos, incluindo o long long int (para
minimizar problemas na transição de 32-bits para 64-bits), um tipo de dado boolean explicito
(chamado _Bool) e um tipo complex que representa números complexos
Suporte oficial para comentários de uma linha iniciados por //, emprestados da
linguagem C++
2.12.5 C1X
90
Essa propriedade não foi acidental; a linguagem C foi criada com o objectivo
principal em mente: facilitar a criação de programas extensos com menos erros, recorrendo ao
paradigma da programação procedural, mas sobrecarregando menos o autor do compilador,
cujo trabalho complica-se ao ter de realizar as características complexas da linguagem. Para
este fim, a linguagem C possui as seguintes características:
Um sistema de tipos simples que evita várias operações que não fazem sentido
Parâmetros que são sempre passados por valor para as funções e nunca por
referência (É possível simular a passagem por referência com o uso de ponteiros);
Segurança de tipo;
91
Closures;
funções aninhadas;
Programação genérica;
Sobrecarga de operadores;
Meta-programação;
Apesar da lista de características úteis que C possui não ser longa, isso não tem sido
um impedimento à sua aceitação, pois isso permite que novos compiladores de C sejam
escritos rapidamente para novas plataformas, e também permite que o programador
permaneça sempre em controle do que o programa está a fazer. Isto é o que por várias vezes
permite o código de C correr de uma forma mais eficiente que muitas outras linguagens.
Tipicamente, só código de Assembly "afinado à mão" é que corre mais rapidamente, pois
possui um controle completo da máquina, mas avanços na área de compiladores juntamente
com uma nova complexidade nos processadores modernos permitiram que a diferença tenha
sido rapidamente eliminada. Uma consequência da aceitação geral da linguagem C é que
frequentemente os compiladores, bibliotecas e até intérpretes de outras linguagens de nível
maior sejam eles próprios implementados em C.
92
Apesar de bastante funcional e eficiente, a linguagem C não é a linguagem preferida
de desenvolvedores de jogos. Por causa dessa falta de segurança e de sua menor capacidade
de criação de softwares complexos, costuma-se preferir uma linguagem que forneça
resultados mais satisfatórios, como por exemplo, C++. [carece de fontes?]
a palavra-chave inline
93
94
3. PROJETO FINAL
Tendo em vista estes tipos de acionamentos, observamos que seria possível criar
uma placa controladora, que teria a função de ligar e desligar um conjunto de reles através
de software de computador.
95
3.3. Material do projeto
- Software APACHE+PHP.
- 1 Placa de Controle;
3.3.2 Piscina
- 2 Bombas de L2 Vc;
- 4m de mangueira 3/16”;
- 3 flanges de 1/2”;
- 1 Reservatório;
- 1 Calha de 2m;
- 1 Filtro;
- 1 Régua de Bornes;
- 1 Madeira 80x60cm;
96
- 5 “T” de 12mm.
- 8 reles comuns;
- 8 octoacopladores;
- 8 resistores de 1000ohms;
- 8 diodos;
- 1 placa padrão;
Foi escolhida para este trabalho a topologia do tipo estrela, por se tratar da
topologia mais comum e mais utilizada em pequenas redes de computadores.
97
3.5. Protocolos de Rede
3.9 Softwares
98
3.10 Hardware
99
3.11 Processos da piscina
100
3.11.3 Processo de Filtragem
101
3.11.5 Processo de Retro lavagem
102
3.12 Telas de Interação
103
4. CONCLUSÃO
104
5. ANEXOS
105
Anexo 1 – Programa PiscinaAut.exe
/*
arquivo: piscina.c
licenca: LGPLv3
data: 07/10/2010
Autores:
André Eppinghaus, Jorge, Deivis, Rodrigo, Bruno,
Compilacao:
*/
#include <stdio.h>
#include <linux/ioctl.h>
#include <linux/parport.h>
#include <linux/ppdev.h>
#include <fcntl.h>
#include "porta.h"
#include <libpq-fe.h>
#include "banco.h"
main()
{
PGconn *conexao;
PGresult *resultado;
char sql[500];
int valor, piscina_cheia=1;
int va1, va2, va3, va4, va5, va6, va7, va8, va9;
//int va1=0;
abre_porta();
escreve_porta(1);
status=le_porta();
// if (status==110 ) { //encheu
escreve_porta(0); //desliga tudo
piscina_cheia=1;
106
while (piscina_cheia) {
if (va1==1) { //enchimento
printf("\n Enchendo = va1=%i\n", va1);//exibe
escreve_porta(1);
}else {
escreve_porta(0);
} //fim if
//verifica filtragem
va2 = atoi( pega_controle(conexao, "123", "1", "1", "va2") );
va4 = atoi( pega_controle(conexao, "123", "1", "1", "va4") );
va6 = atoi( pega_controle(conexao, "123", "1", "1", "va6") );
va8 = atoi( pega_controle(conexao, "123", "1", "1", "va8") );
//verifica aspiracao
va3 = atoi( pega_controle(conexao, "123", "1", "1", "va3") );
va4 = atoi( pega_controle(conexao, "123", "1", "1", "va4") );
va6 = atoi( pega_controle(conexao, "123", "1", "1", "va6") );
va8 = atoi( pega_controle(conexao, "123", "1", "1", "va8") );
//verifica retrolavagem
va2 = atoi( pega_controle(conexao, "123", "1", "1", "va2") );
va5 = atoi( pega_controle(conexao, "123", "1", "1", "va5") );
va7 = atoi( pega_controle(conexao, "123", "1", "1", "va7") );
va8 = atoi( pega_controle(conexao, "123", "1", "1", "va8") );
// }//fim de if
}
fecha_porta();
} //Fim
107
Anexo 2 – Programa do Banco de Dados
/*
arquivo: banco.h
licenca: LGPLv3
Autor: André Eppinghaus
data: 07/10/2010
funcoes:
*/
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <libpq-fe.h>
PGresult *res;
PGconn *conn;
108
static void exit_nicely(PGconn *conn) {
PQfinish(conn);
exit(1);
}
conn = PQconnectdb(conninfo);
return conn;
}
/* executa o sql */
res = PQexec(conn, sql);
if (PQresultStatus(res) != PGRES_COMMAND_OK)
{
fprintf(stderr, "DECLARE CURSOR failed: %s", PQerrorMessage(conn));
PQclear(res);
exit_nicely(conn);
}
PQclear(res);
return;
}
109
int i,j, existe=0;
char sql[500], *valor_controle="vazio";
/*
* Should PQclear PGresult whenever it is no longer needed to avoid
memory
* leaks
*/
PQclear(res);
sprintf (sql, "DECLARE myportal CURSOR FOR select %s from controle
where numero=%s and login=%s and senha = %s", controle, numero, login,
senha ); //monta o nome em uma string
// printf("\n\t%s",sql);
res = PQexec(conn, sql);
if (PQresultStatus(res) != PGRES_COMMAND_OK)
{
fprintf(stderr, "DECLARE CURSOR failed: %s", PQerrorMessage(conn));
PQclear(res);
exit_nicely(conn);
}
PQclear(res);
PQclear(res);
/* close the portal ... we don't bother to check for errors ... */
res = PQexec(conn, "CLOSE myportal");
PQclear(res);
110
//printf("\nretorno=%s", valor_controle);
return valor_controle;
/*
* Should PQclear PGresult whenever it is no longer needed to avoid
memory
* leaks
*/
PQclear(res);
sprintf (sql, "DECLARE myportal CURSOR FOR select 1 from controle where
numero=%s", numero); //monta o nome em uma string
res = PQexec(conn, sql);
if (PQresultStatus(res) != PGRES_COMMAND_OK)
{
fprintf(stderr, "DECLARE CURSOR failed: %s", PQerrorMessage(conn));
PQclear(res);
exit_nicely(conn);
}
PQclear(res);
PQclear(res);
/* close the portal ... we don't bother to check for errors ... */
res = PQexec(conn, "CLOSE myportal");
111
PQclear(res);
if ( strcmp(valor_controle,"vazio")==0 ) {
existe=0;
}else { existe=1; }
return existe;
112
Anexo 3 – Programa de Controle da Porta Paralela
/*
arquivo: porta.h
licenca: LGPLv3
Autor: André Eppinghaus
data: 07/10/2010
Funcoes:
int abre_porta()
//necessario para abrir a interface da porta paralela somente como usuário
root
*/
//--------------------------------------- Variaveis
-------------------------------------
unsigned char mask = (PARPORT_STATUS_ERROR
| PARPORT_STATUS_BUSY);
unsigned char val = (PARPORT_STATUS_ERROR
| PARPORT_STATUS_BUSY);
int fd;
int mode;
unsigned char status, valor=0;
int abre_porta() {
if (ioctl(fd,PPCLAIM))
{
perror("PPCLAIM");
close(fd);
return(1);
}
113
perror ("PPNEGOT");
close (fd);
return 1;
}
return mode;
} //fim abre_porta
void fecha_porta() {
ioctl (fd, PPRELEASE); // libera a impressora
close(fd); //fecha a
impressora
} //fim fecha_porta
114
Anexo 4 – Esquema Elétrico da Placa Controle
115
6. REFERÊNCIAS BIBLIOGRÁFICAS
116
WESTPHAL, Prof. Carlos Becker Material sobre Redes Wireless
Universidade Federal de Santa Catarina.
RNP, Rede Nacional de Ensino e Pesquisa As Tecnologias de Redes Wireless.
Outros Sites:
http://www.rogercom.com
http://www.tugatronica.com/iii-introducao-a-porta-paralela/
http://www2.eletronica.org/apostilas-e-ebooks/interfaces/apostila-
paralela.pdf
http://www.dghp.bem-vindo.net/tutorial/paralela/paralela.html
http://www.infowester.com/servapach.php
http://www.poolcompany.com.br/intro_trat_psicina.asp
117