Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

A Modulação e Programação O que tem a Haver? 
 
 Pratica- Unidade 2 
 
 
 
 Primeiro: para se entender o que é modulação e como se aplica em 
várias situações, deve-se definir o que significa e segundo a definição em 
engenharia mecânica que também envolve engenharia de controle e 
automação e engenharia elétrica é isso: 
 O processo de modulação consiste numa operação realizada sobre 
o sinal ou dados a transmitir e que produz um sinal apropriado para a 
transmissão sobre o meio de transmissão em causa. A escolha da técnica 
de modulação permite “moldar” as características do sinal a transmitir e 
adaptá-lo às características do canal. 
 Industrialmente o controle escalar é o método mais utilizado no 
acionamento de motores de indução trifásicos, por consequência da sua 
robustez e baixo custo. Entretanto, o controle é aplicado em malha aberta, 
método este que apresenta um desempenho inferior quando comparado 
ao controle em malha fechada, no qual é considerada a variação da carga 
aplicada no eixo do motor. O uso de sensores para a realimentação da 
velocidade eleva o custo de aquisição e manutenção do motor, além de 
modificar suas dimensões físicas. Uma possibilidade para a estimativa 
precisa da velocidade mecânica é o uso do estimador Filtro de Kalman 
Estendido. A técnica de controle direto do torque com modulação por 
vetores espaciais em conjunto com o estimador Filtro de Kalman 
Estendido, baseado no modelo matemático do motor, é uma possibilidade 
para o controle em malha fechada. Ou seja, mesmo em física é necessário 
se ter um controle de um sistema para que esse mesmo sistema tenha 
um retorno de trabalho que possa ser aplicado de maneira efetiva e esse 
trabalho gere u resultado que pode ser aplicado de maneira inteligente em 
vários setores. 
 A oprimira vista pode as duas ciências como física e programação 
não ter nada a haver uma com a outra, mas, estão intimamente ligadas, 
principalmente quando se refere a novas tecnologias as quais advém 
quando se misturam o que pode se dizer que uma é um complemento da 
outra. 
 
 
 A MODULARIZAÇÃO 
 
 Claro que naturalmente apesar do exemplo acima e computação 
estar ligado em muitos lugares da nossa sociedade ela continua como 
abstrata pois ela não pode ser tocada, mas pode ser vista pois necessita 
de aparelhos de processamento não sendo necessariamente 
computadores pois há muitos equipamentos que possuem, outros tipos 
de procedimentos diferentes, mas iguais aos computadores que usam 
softwares para seu funcionamento. E a Modularização pode ser entendida 
como um conceito computacional que é empregado para dividir o seu 
programa em partes funcionais, partes essas que conversam umas com 
as outras. Observando bem, toda a nossa solução de software é, no final 
das contas, sequencial, isto é, o software é executado linha por linha, uma 
após a outra. Porém, às vezes, uma linha manda o seu programa para 
outra parte dele e depois volta, isso é o que aprendemos com as Funções. 
Ainda assim, ao entrar na Função, a execução continua linha a linha. Mas 
note que a Função é uma parte do seu programa que está em uma região 
diferente e é acessada por meio de uma chamada a ela e, quando a sua 
execução termina, volta para quem a chamou. 
 
 Aqui está um exemplo abaixo: 
 
 #include 
 #include 
 
int main () 
{ 
 int i; //Imprime a linha com 3 +. 
 
 for (i =0; i 
#include 
 
void imprimeLinha_3 () 
{ int i; 
 for (i = 0; i fat = fat *c; 1 => 1 * 1 = 1; 2 => 1 * 2 = 2; 3 => 2 * 3 = 6; 4 => 6 * 4 = 24 
 
 
 
 
 
Agora um exemplo de código usando o mesmo tema de fatoração, mas com 
modularização: 
 
 def fatorial ( numero): 
 
 fat = 1 
 
 c = 1 
 
 while cprincipal() 
 
 
 
 Dos programas e subprogramas se entende que o programa é o corpo 
do todo que vai executar uma dada função em algum lugar específico que 
contém todas as necessidades para executa-lo em qualquer plataforma que se 
use, como o exemplo em Python, é a parte que começa em def fatorial (numero): 
até principal (). 
 Esse mesmo programa é dividido em dois subprogramas que 
começam respectivamente em def fatorial (numero): e vai até return fat o 
primeiro e o segundo em def principal (): até principal (). 
 
 
 Abordagem Top-Down E Bottom-Up 
 
 A abordagem top-down basicamente divide um problema ou algoritmo 
complexo em várias partes menores (módulos). Estes módulos são ainda mais 
decompostos até que o módulo resultante seja o programa fundamental 
essencialmente compreendido e não possa ser mais decomposto. Depois de 
atingir um certo nível de modularidade, a decomposição de módulos é 
interrompida. A abordagem top-down é o processo passo a passo de quebrar o 
grande módulo do programa em módulos mais simples e menores para organizar 
e codificar o programa de maneira eficiente. O fluxo de controle nessa 
abordagem está sempre no sentido descendente. A abordagem top-down é 
implementada na linguagem de programação “C” usando funções. 
 Assim, o método top-down começa com o design abstrato e, em 
seguida, sequencialmente, esse design é refinado para criar níveis mais 
concretos até que não haja exigência de refinamento adicional. 
 
 A abordagem botton-up funciona de maneira oposta à abordagem top-
down. Inicialmente, inclui o projeto das partes mais fundamentais que são 
então combinadas para fazer o módulo de nível superior. Esta integração de 
submódulos e módulos no módulo de nível superior é repetidamente executada 
até que o algoritmo completo requerido seja obtido. 
 A abordagem botton-up funciona com camadas de abstração. A 
principal aplicação da abordagem de baixo para cima é testar como cada 
módulo fundamental é testado pela primeira vez antes de mesclá-lo ao maior. 
O teste é realizado usando certas funções de baixo nível. 
 
 Como exemplo prático em modularização de aqui está um programa 
em C que escolhe o tipo de microprocessador para uma tarefa em para uma 
determinada função para PICs, que como já foi dito são microprocessadores 
muitos utilizados em processos de automação, IOT, embarcados e outros 
seguimentos e para a compilador IDE foi utilizado o MPLAB que é um software 
proprietário e específico para microprocessadores: 
 
///////////////////////////////////////////////////////////////////////////////////////////////////// 
// SELEÇÃO DO TIPO DE PROCESSADOR 
//>>>>>>>>>>>>>>>>>>> Apenas um define pode existir 
// Coloque como um comentário os que não estiver usando 
 
//#define 458 
//#define 452 
//#define 877 
//#define 877A 
 
//////////////////////////////////////////////////////////////////////// 
///////////////////////// OS AJUSTES SÃO AUTOMATICAMENTE REALIZADOS 
//////////////////// CONFORME O MODELO DO PROCESSADOR SELERCIONADO 
 
#ifdef 458 
 #include // Define processador 18F458 
 #IFDEF mododebugger 
 #device icd = true 
 #fuses noWRTD, noWRTB, noCPD, noCPB, noWRT, noWRTC, no 
EBTR, no EBTRB 
 #fuses NOOSCSEN, noSTVREN, NOLVP, noPROTECT, noWDT, 
WDT128 
 #fuses noBROWNOUT, BORV27, HS, PUT, debug 
 #else 
 #fuses noWRTD, noWRTB, noCPD, noCPB, noWRT, noWRTC, no 
EBTR, no EBTRB 
 #fuses NOOSCSEN, noSTVREN, NOLVP, noPROTECT, noWDT, 
WDT128 
 #fuses noBROWNOUT, BORV27, HS, PUT, nodebug 
 #ENDIF 
#endif 
 
#ifdef 452 
 #include // Define processador 18F452 
 #IFDEF mododebugger 
 #device icd = true 
 #fuses noWRTD, noWRTB, noCPD, noCPB, noWRT, noWRTC, no 
EBTR, noEBTRB 
 #fuses NOOSCSEN, noSTVREN, NOLVP, noPROTECT, noWDT, 
WDT128 
 #fuses noBROWNOUT, BORV27, HS, PUT, debug 
 #else 
 #fuses noWRTD, noWRTB, noCPD, noCPB, noWRT, noWRTC, no 
EBTR, no EBTRB 
 #fuses NOOSCSEN, noSTVREN, NOLVP, noPROTECT, noWDT, 
WDT128 
 #fuses noBROWNOUT, BORV27, HS, PUT, nodebug 
 #ENDIF 
#endif 
 
 #ifdef 877 
 #include // Define processador 16F877 
 #IFDEF mododebugger 
 #device icd = true 
 #fuses HS, NOWDT, PUT, NOPROTECT, NOBROWNOUT, NOUVP, 
NOCPD, NOWRT 
 #fuses HS, NOWDT, PUT, PROTECT, NOBROWNOUT, NOUVP, 
NOCPD, NOWRT 
 #ENDIF 
#endif 
 
#ifdef 877A 
 #include // Define processador 16F877A 
 #IFDEF mododebugger 
 #device icd = true 
 #fuses HS, NOWDT, PUT, NOPROTECT, NOBROWNOUT, NOUVP, 
NOCPD, NOWRT 
 #fuses HS, NOWDT, PUT, PROTECT, NOBROWNOUT, NOUVP, 
NOCPD, NOWRT 
 #ENDIF 
#endif 
 
 Neste trecho do código temos quatro defines um que indica 4521, 
458,877 e 877A, dos quais um será usado por vez, sendo os que não serão 
usados deverão ser precedidos de comentários “// “. Em nosso exemplo todos 
estão pré habilitados para o 16F1877A. 
 
 Em vários pontos do programa teremos os indicadores de compilação 
condicional, isto é, o compilador decidirá, baseado em qual ‘define’ está ativo, 
qual trecho do código será compilado. Desta forma podemos ter um único 
programa fonte para mais de um modelo de Pic. 
 
 O assunto é deveras longo e detalhado e se o assunto for de muito 
interesse do leitor averigue na parte de pesquisa bibliográfica mais detalhe das 
obras aqui incluídas, desde já dou por concluída esse trabalho. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Pesquisas Bibliográficas: 
 
Sem autor: Logicas de programação: top down, modulação, estruturas de 
controle, confiabilidade, manutenibilidade e Portugol. Cursos CPT, 2023. 
Disponível em: https://tinyurl.com/4np2emp6. Acesso em 06/05/2023. 
 
Gomes, Rodolfo. Métodos: módulos de programa em Java. DEVMEDIA, 2012. 
Disponível em: https://tinyurl.com/2wazzyv8. Acesso em 07/05/2023. 
 
 
Carvalho, Victorio Albani de. Lógica de Programação: Curso técnico de 
Informática. 1º edição. Espírito Santo: Instituto Federal do Espírito Santo, 2010. 
 
Gatto, Elaine Cecília. Funções e Procedimentos- Modularização. 
EMBARCADOS, 2018. Disponível em: https://embarcados.com.br/funcoes-e-
procedimentos-modularizacao/. Acesso em: 08/05/2023. 
 
Gado, Wesley. Modularização: Funções e Procedimentos. TREINAWEB, 2021. 
Disponível em: https://www.treinaweb.com.br/blog/modularizacao-funcoes-e-
procedimentos. Acesso em: 08/05/2023. 
 
Delgado, Armando Luiz Nicolini. Funções: O que são e porque usa-las. UFPR, 
2013. Disponível em:https://www.inf.ufpr.br/cursos/ci067/Docs/NotasAula/notas-
11_Fun_c_coes.html. Acesso em: 08/05/2023. 
 
Silva, Gabriel Bueno da. Procedimento e Funções. REA-AED, sem data. 
Disponível em: https://gabrielbueno072.github.io/rea-aed/aula_func.html. 
Acessado em: 09/05/2023. 
 
Sem autor. Diferença entre abordagem top-down e botton-up.Gadget-
info.com,2019. Disponível em: https://pt.gadget-info.com/difference-between-
top-down. Acessado em: 09/05/2023. 
Zottis, Jônatas Lemuel Bispo. Uso de técnicas de modulação e de estimadores 
de estados de controle da velocidade de motores elétricos. UFPEL, 2019. 
Disponível em: https://institucional.ufpel.edu.br/projetos/id/p8646. Acesso em 
12/05/2023. 
 
Junior, Vidal Pereira da Silva. Microcontroladores PIC 16F e 18F – Teoria e 
Prática. 1º Edição. São Paulo: Instituto Newton C. Braga, 2013.

Mais conteúdos dessa disciplina