Pesquisar neste blog

07/02/2021






a) Encontre H(Z), faça diagrama de polos e zeros e indique a RDC
Resolução:

1.a)
















































b) Encontre a resposta ao impulso do sistema
Resolução:


























c) Escreva a equação de diferença que caracteriza o sistema
Resolução:


















d) O sistema é estável e causal ?
Resolução:


2) A entrada de um sistema LIT causal é x[n]=u[-n-1]+(1/2)n u[n]. A transformada Z da saída desse sistema é 𝑌(𝑧) = 









a) Determine H(z) e sua RDC
b) Qual a RDC para Y(z) ?
c) Determine y[n].

Resolução:








2.b)


2.c)


3) : Um sistema LIT tem resposta ao impulso definida por: 








Determine y[n], numericamente e graficamente, para x[n]= u[n]-u[n-4].

Resolução:







































4)  Considere um sistema LIT que seja estável e para o qual H(z), a transformada Z da resposta ao impulso, seja dada por:







Suponha que x[n], a entrada do sistema, seja uma sequência degrau unitário.

a) Determine a saída y[n] calculando a convolução discreta de x[n] com h[n].
b) Determine a saída y[n] calculando a transformada inversa z de Y(z).
 
Resolução :

4.a)





















4.b)

























5)  Considere a figura abaixo onde se tem a associação em cascata de dois sistemas.

a) Esboce w[n] se x[n]=(-1)n u[n]. Determine também y[n].

b) b) Determine e esboce a resposta ao impulso total do sistema em cascata, isto é, faça um gráfico da saída y[n]=h[n] quando x[n]=δ[n].

c) Esboce w[n] para x[n]=2 δ[n]+4δ[n-4]-2δ[n-12].

















Resolução :

5.a)






































5.b)





































5.c)


12/01/2021

Mensagem automática no Google Planilhas do Excel VBA

function onEdit() {//função salva automática sempre que houver alguma alteração
  
  Browser.msgBox("Olá Mundo!")
  
}



 


03/01/2021

Proteção contra curto - circuito: Exercícios Resolvidos

Lista de atividades: Proteção

1) Dimensionamento do dispositivo de proteção contra curto-circuito para o motor trifásico de 5cv de alimentação (fase-fase) de 220V, fator de potência igual a 0,7. O rendimento do motor é de 0,6. A relação IP/IN = 5. O tempo de partida é 5 segundos. 

Determinar a corrente nominal e a corrente de partida dada pela Equação 1.1







Resolução:





2) Dimensionamento do dispositivo de proteção contra curto-circuito para o motor trifásico de 14cv de alimentação (fase-fase) de 380V, fator de potência igual a 0,9. O rendimento do motor é de 0,85. A relação IP/IN = 6. O tempo de partida é 5 segundos.

Determinar a corrente nominal e a corrente de partida dada pela Equação 1.2

 





Resolução:





3) Dimensionamento do dispositivo de proteção contra curto-circuito para o motor trifásico de 50 cv de alimentação (fase-fase) de 380V, fator de potência igual a 0,92. O rendimento do motor é de 0,85. A relação IP/IN = 6. O tempo de partida é 7 segundos.

 Determinar a corrente nominal e a corrente de partida dada pela Equação 1.3








Resolução:











































4)  Dimensionamento do dispositivo de proteção contra curto-circuito para o motor trifásico de 30 cv de alimentação (fase-fase) de 380V, fator de potência igual a 0,92. O rendimento do motor é de 0,85. A relação IP/IN = 7. O tempo de partida é 6 segundos.

Determinar a corrente nominal e a corrente de partida dada pela Equação 1.4

 






Resolução:









Dimensionamento de condutores pelo método da queda de tensão

Um motor indução trifásico de 20 cv com alimentação em 220V, 60 Hz, fator de potência 0,8 e rendimento 0,96. A corrente de partida é cinco vezes a nominal. Está instalado a cerca a 50 metros do CCM. A queda de tensão desejada é de 2%.

Resolução:

Cálculo da corrente nominal:

In = ( Potencia mecanica . 736 ) / ( 3 . V . cos(θ) . n ) = 20 . 736/(3 . 220 . 0,8 . 0,96)= 50,3 [A]

Seção = 100.√3.ρ .Σ.L.I / (μ .V) 

ρ= (1/56); 
L= 50m(distância); 
In= 50,3 A;
μ= 2%(quedade tensão);
V= 220V (tensão) 

Seção = 100.√3.(1/56) . 50 . 50,3 / (2 . 220) = 17,67mm² ( comercial de 25 mm²)

Jogo do Flappy Bird com HTML

Arquivo: flappy.css
* {
    box-sizingborder-box;
}

@font-face{
    font-family'Pixel';
    srcurl('../fonts/Pixel.ttf');/*importando fonte*/
}

[wm-flappy]{
    positionrelative;/*posição relativa*/
    border5px solid dodgerblue;/*borda 5 pixel*/
    height700px;
    width1200px;
    margin15px;/*margem*/
    background-colordarkslateblue/*cor */
    overflowhidden/*qualquer item fora definida nessa div não vai aparecer*/
}

.passaro{
    positionabsolute;
    width60px;
    leftcalc(50% - 30px); /*50% à esquerda menos 30 pixel*/
}

.par-de-barreiras {
    positionabsolute;
    top0;
    height100%;
    displayflex;
    flex-directioncolumn;/*organiza na vertical*/
    justify-contentspace-between/*um embaixo , outro em cima, ...*/
}

.barreira {
    displayflex;
    flex-directioncolumn;
    align-itemscenter;
}

.barreira .borda {
    height30px;
    width130px/*largura*/
    backgroundlinear-gradient(90deg#639301#A5E82E);
    border2px solid #000;
}

.barreira .corpo { /*corpo*/
    height150px;
    width110px;
    backgroundlinear-gradient(90deg#639301#A5E82E);
    border-left2px solid #000;
    border-right2px solid #000;
}

.progresso {
    positionabsolute;
    top10px/*no topo*/
    right10px/*alinhado 10 pixel a esquerdad*/
    font-family: Pixel;
    font-size70px;
    z-index100;
}


Arquivo: flappy.js
function novoElemento(tagNameclassName) {
    const elem = document.createElement(tagName)
    elem.className = className
    return elem
}

function Barreira(reversa = false) {
    this.elemento = novoElemento('div''barreira')

    const borda = novoElemento('div''borda')
    const corpo = novoElemento('div''corpo')
    this.elemento.appendChild(reversa ? corpo : borda)
    this.elemento.appendChild(reversa ? borda : corpo)

    this.setAltura = altura => corpo.style.height = `${altura}px`
}

// const b = new Barreira(true)
// b.setAltura(300)
// document.querySelector('[wm-flappy]').appendChild(b.elemento)

function ParDeBarreiras(alturaaberturax) {
    this.elemento = novoElemento('div''par-de-barreiras')

    this.superior = new Barreira(true)
    this.inferior = new Barreira(false)

    this.elemento.appendChild(this.superior.elemento)
    this.elemento.appendChild(this.inferior.elemento)

    this.sortearAbertura = () => {
        const alturaSuperior = Math.random() * (altura - abertura)
        const alturaInferior = altura - abertura - alturaSuperior
        this.superior.setAltura(alturaSuperior)
        this.inferior.setAltura(alturaInferior)
    }

    this.getX = () => parseInt(this.elemento.style.left.split('px')[0])
    this.setX = x => this.elemento.style.left = `${x}px`
    this.getLargura = () => this.elemento.clientWidth

    this.sortearAbertura()
    this.setX(x)
}

// const b = new ParDeBarreiras(700, 200, 800)
// document.querySelector('[wm-flappy]').appendChild(b.elemento)

function Barreiras(alturalarguraaberturaespaconotificarPonto) {
    this.pares = [
        new ParDeBarreiras(alturaaberturalargura),
        new ParDeBarreiras(alturaaberturalargura + espaco),
        new ParDeBarreiras(alturaaberturalargura + espaco * 2),
        new ParDeBarreiras(alturaaberturalargura + espaco * 3)
    ]

    const deslocamento = 3
    this.animar = () => {
        this.pares.forEach(par => {
            par.setX(par.getX() - deslocamento)

            // quando o elemento sair da área do jogo
            if (par.getX() < -par.getLargura()) {
                par.setX(par.getX() + espaco * this.pares.length)
                par.sortearAbertura()
            }

            const meio = largura / 2
            const cruzouOMeio = par.getX() + deslocamento >= meio
                && par.getX() < meio
            if(cruzouOMeionotificarPonto()
        })
    }
}

function Passaro(alturaJogo) {
    let voando = false

    this.elemento = novoElemento('img''passaro')
    this.elemento.src = 'imgs/passaro.png'

    this.getY = () => parseInt(this.elemento.style.bottom.split('px')[0])
    this.setY = y => this.elemento.style.bottom = `${y}px`

    window.onkeydown = e => voando = true
    window.onkeyup = e => voando = false

    this.animar = () => {
        const novoY = this.getY() + (voando ? 8 : -5)
        const alturaMaxima = alturaJogo - this.elemento.clientHeight

        if (novoY <= 0) {
            this.setY(0)
        } else if (novoY >= alturaMaxima) {
            this.setY(alturaMaxima)
        } else {
            this.setY(novoY)
        }
    }

    this.setY(alturaJogo / 2)
}



function Progresso() {
    this.elemento = novoElemento('span''progresso')
    this.atualizarPontos = pontos => {
        this.elemento.innerHTML = pontos
    }
    this.atualizarPontos(0)
}

// const barreiras = new Barreiras(700, 1200, 200, 400)
// const passaro = new Passaro(700)
// const areaDoJogo = document.querySelector('[wm-flappy]')
// areaDoJogo.appendChild(passaro.elemento)
// areaDoJogo.appendChild(new Progresso().elemento)
// barreiras.pares.forEach(par => areaDoJogo.appendChild(par.elemento))
// setInterval(() => {
//     barreiras.animar()
//     passaro.animar()
// }, 20)

function estaoSobrepostos(elementoAelementoB) {
    const a = elementoA.getBoundingClientRect()
    const b = elementoB.getBoundingClientRect()

    const horizontal = a.left + a.width >= b.left
        && b.left + b.width >= a.left
    const vertical = a.top + a.height >= b.top
        && b.top + b.height >= a.top
    return horizontal && vertical
}

function colidiu(passarobarreiras) {
    let colidiu = false
    barreiras.pares.forEach(parDeBarreiras => {
        if (!colidiu) {
            const superior = parDeBarreiras.superior.elemento
            const inferior = parDeBarreiras.inferior.elemento
            colidiu = estaoSobrepostos(passaro.elementosuperior)
                || estaoSobrepostos(passaro.elementoinferior)
        }
    })
    return colidiu
}

function FlappyBird() {
    let pontos = 0

    const areaDoJogo = document.querySelector('[wm-flappy]')
    const altura = areaDoJogo.clientHeight
    const largura = areaDoJogo.clientWidth

    const progresso = new Progresso()
    const barreiras = new Barreiras(alturalargura200400,
        () => progresso.atualizarPontos(++pontos))
    const passaro = new Passaro(altura)

    areaDoJogo.appendChild(progresso.elemento)
    areaDoJogo.appendChild(passaro.elemento)
    barreiras.pares.forEach(par => areaDoJogo.appendChild(par.elemento))

    this.start = () => {//inicia o jogo
        // loop do jogo
        const temporizador = setInterval(() => {
            barreiras.animar()
            passaro.animar()

            if (colidiu(passarobarreiras)) {
                clearInterval(temporizador)
            }
        }, 20)
    }
}

new FlappyBird().start()


Arquivo: flappy.html
<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>Flappy Bird</title>
    <link rel="stylesheet" href="css/estilo.css">
    <link rel="stylesheet" href="css/flappy.css">
</head>

<body class="conteudo">
    <h1>Flappy Bird</h1>
    <div wm-flappy></div>
    <script src="flappy.js"></script>
</body>

</html>





























Créditos para: Nilson Leitão










01/01/2021

Triângulo das potências - Exercícios Resolvidos

1) Encontre as potências faltantes no triângulo de potência.

a) 














Resolução:









b)













Resolução:












2) Calcule as potências ativas e reativas de um motor, sabendo que o fator de potência é igual 0,78. A potência Aparente é de 3KVA.

Resolução:



3) Determine a potência Aparante e Reativa de um motor, sabendo que o seu fator de potência é igual 0,85 e sua 1,47kW.

Resolução:


5) Sabendo que um motor de 5 cv e rendimento 70%, tem fator de potência 0,85. Determine as potências aparente, ativa e reativa do motor.

Resolução:


6) Sabendo que um motor de 12 cv e rendimento 85%, tem fator de potência 0,92, Determine as potências aparente, ativa e reativa do motor.

Resolução: