Ir ao conteúdo
  • Cadastre-se

Aislan Silva Costa

Membro Pleno
  • Posts

    76
  • Cadastrado em

  • Última visita

Tudo que Aislan Silva Costa postou

  1. Boas a todos! Estou estudando sobre listas duplamente encadeadas, surgiu a necessidade de passar uma struct para dentro de outra struct, para dentro de mais outra. Eu já consegui fazer uma, porém, ao invés de usar uma struct livro, usava apenas um int id dentro do struct nó. O que preciso e fazer a correta passagem da struct livro, para dentro da struct no, que por sua fez esta dentro da struct lista; Com int livro_id dentro do próprio nó; typedef struct no { in livro_id; struct livro *livro; }no; Agora tenho uma struct livro separada do nó: typedef struct livro { int id; }livro; typedef struct no { struct livro *livro; }no; typedef struct lista { no *primeiro; }lista; Qual o erro desse código? obs: lembrando que é apenas um código genérico para implementação: #include<stdlib.h> #include<stdio.h> typedef struct livro { int id; }livro; typedef struct no { struct livro *livro; }no; typedef struct lista { no *primeiro; }lista; void iniciarLista(lista *lista) { lista->primeiro = NULL; } void inserir(lista *lista, livro *livro) { no *new = (no*)malloc(sizeof(no)); new->livro = livro; lista->primeiro = new; } void imprime(lista *lista) { printf("%d", lista->primeiro->livro->id); } int main() { lista *lista; livro livro; livro.id= 10; iniciarLista(lista); inserir(lista, &livro); imprime(lista); }
  2. Obrigado a todos, já entendi o que deve ser feito, testei no proteus e deu certo, na pratica, não haverá como eu fazer, pois nao estou encontrando transistor pnp em minhas sucatas, há muitos npn, ha como substituir no circuito? se sim, como?
  3. Oi @Tito Fisher, como vai? nao tem eletronica na minha cidade, so da pra comprar componentes pela internet, a fonte esta funcionando, so que em vez de duas, quero ter so uma que suporte maior corrente, posso colocar transistores em serie ou em paralelo para suportar maior corrente? obs: segundo: http://www.newtoncbraga.com.br/index.php/duvidas-dos-internautas/1737-duv090.html e isso que devo fazer? adicionado 5 minutos depois Olá @Johnny Teles, obrigado pelo contato vi mesmo que a perda de energia na forma de calor e grande, coloquei um bom dissipador de calor. Estou evitando ao maximo comprar circuitos prontos, pois eu os construindo apreendo um pouco mais. Você tem algum circuito discreto para um conversor step down eficiente, eu tenho muito sucata aqui para construção, vi alguns nas minhas pesquisas, mas usavam muitos componentes, o que seria trabalhoso, tem algum mais pratico?
  4. Boas a Todos! Tenho um raspberry pi 1 model a+, fiz uma fonte baseada na do Wagner Rambos do WR Kits: No lugar do TIP127 usei um A940, e no lugar do C22nF usei um de 440nF. A fonte funciona, a tensão não cai, coloquei dissipadores de calores também. O ponto é que, o transistor suporta correntes de até 2 amperes, no circuito apresentado eu poderia ligar apenas o raspberry e um mouse, como exemplo, para ter uma margem de segurança. Eu quero, usar apenas um circuito desses, que atende o consumo de corrente de: 1 raspberry = até 1.8 amperes 1 mouse: = 500 miliamperes 1 adaptador wifi = 1 ampere 1 hub usb = 100 mili amperes Total: com folga 3.6 amperes Eu vi em algum lugar, que posso colocar ou 7805 em series ou transistores em serie. Posso realmente fazer isso para suportar uma maior corrente? Quanto a temperatura, se dividindo a corrente, também divide a temperatura entre os componentes ou um pode esquentar mais que o outro?
  5. Boas a todos! Estou a tentar configurar meu notebook com windows 7 para atuar como um servidor FTP para web. Estou a usar como aplicação servidor o Cesar FTP, mas tentei com o FileZilla Server, mas tem o mesmo erro. Antes de apresentar o erro, há algumas observações: Roteador: TP-LINK wr720n Internet via rádio, ip dinamico, registrei uma conta no-ip dns, funciona com sucesso servidor ftp local funciona firewall do windows completamente desativado, sem anti-virus firewall do roteador totalmente desativado, dmz desativado Servidor rodando, ferramenta de atualização do ip funcionando, ping no endereço funcionando Servidor funcionando com o ip do computador DDNS funcionando Portas do roteador abertas Erro de conexão! Erro no assistente do Filezilla Cliente Eu procurei sobre este erro na internet, com resultados principalmente no próprio fórum da filezilla, simplesmente dizem que tem que substituir o roteador! E isso mesmo, não há nenhuma solução?
  6. @rjjj @Isadora Ferraz Deu certo, obrigado aos dois!
  7. Olá @rjjj como vai? Então, como eu disse sou iniciante ainda em eletrônica, então peço paciência. Em simulação no proteus, eu coloquei um gerador de pulso na entrada de controle do circuito de servo, como na pratica, em 7hz(esse valor de frequência pois foi o menor que obtive com timmer do arduino) ele fica oscilando sem sair do lugar. Achei interessante a precisão do proteus. Frequências maiores, na simulação e na pratica o motor nem liga. Ainda na simulação o menor valor de frequência para que se comportasse de modo correto com 0.100hz, ou 100 metros. Então eu pergunto se eu deveria construir um filtro RC passa baixa, preferencialmente sem o amp-op(estou na luta com eles, esperando uma encomenda chegar) que filtra frequências acima de 0.100hz, é isso?
  8. Boas a Todos! Eu preciso controlar a tensão de saída de um Arduino uno num escopo de 0.86v até 3.5v, isso para controle de um servo caseiro que fiz. Este servo não trabalha com pwm para controlar sua posição, mas sim com variação de tensão na entrada de controle do circuito. Fora do arduino, consigo controlar o servo através e um potenciômetro de 100k, se vario a resistência do potenciômetro então vario a tensão de controle, o que resulta na mudança de posição do servo, exemplo, numa tensão de controle de 0.86v o servo vai pra posição 0 graus, em 3.5v para 180 graus. Como eu posso controlar a tensão de saída pelo arduino? Eu tentei criando pwm no timmer 1 do arduino, num escopo de frequências entre 1 e 7 hz o motor fica oscilando sem sair do lugar. frequências acima disso, o motor fica com um zumbido porém não oscila e nem sai do lugar. Como sou muito leigo, no potenciômetro, ligado em vcc e gnd, a sua saída teria alguma frequência? E uma fonte de alimentação dessas de carregador de celular, há alguma frequência.(frequência de que???) Pergunto porque se não houver frequência nenhuma, então quando a saída do potenciômetro é 2.5v , quer dizer que a frequência e 0hz(???), ou seja linear, não liga nem desliga como um sinal pwm. Se eu estiver raciocinando certo, num sinal pwm, para que ele não desligue hora nenhuma o dutycicle deveria ser 100%, porém isso só e possivel com vcc máximo. Pois : Vout = dutycicle/100 * Vcc Se por exemplo, para um tensão de saída de pwm de 0.86v o dutycicle seria de 17%, então, ficaria 83% do tempo desligado, fazendo o motor oscilar sem sair do lugar, será? Uma observação e que em tensões de 0v e vcc o motor gira totalmente para um lado ou outro, chega no limite mecânico que eu estipulei e fica oscilando nesse limite querendo ir pra algum lugar(pra onde eu não sei). Uma ultima duvida é, como fazer as saída do arduino se comportar como um potenciômetro, de modo que o sinal sempre fique em alto, variando apenas a tensão, se expressando melhor, seria, ficar sempre em "alto" em 2.5v, e não o sinal 50% ligado e 50% desligado como um sinal pwm.
  9. Alguém teria uma sugestão de como alterar estes switch? Ele é necessário para que com ele fechado, sature o transistor e possibilite a passagem de corrente. Sem esse transistor a saída do comparador fica com algum estado mesmo com não a tensão na REF. Eu tentei colocar um transistor pnp junto ao switch em REF, mas acontece que ele altera os valores da tensão no transistor Q1. Um transistor npn não seria viável, já que ele não saturaria se tensão de REF fosse próxima aos 0v. Alguém teria uma sugestão
  10. @Mestre88 Não, serão saída de níveis lógicos para um ci "ponte h", no qual há dois pinos para o sentido de rotação, high em um pino e low no outro o motor gira num sentido e vice-versa. O que está acontecendo é que quando a saída do comparador discreto e 0v, o estado baixo proveniente do transistor bc558 esta com nível alto, ok. Mas acontece que o bc548 também está saturado o que não devia acontecer pois em sua base estaria chegando 0v. Nas medições aqui, a saída do comparador tem 0v, e esta conectada na base do bc548, que esta com tensão vcc. Como e possivel que em 2 pontos do mesmo segmento haja duas tensões diferentes? Porque os 0v nao aparece na base do bc548, e nem a tensão vcc da sua base aparece na saída do comparador?
  11. @Mestre88, Sim, na simulação com os leds, agora sim o led apaga. Mas na pratica sem o led, a saída de estado alto, esta saindo com tensões 3.8v mesmo a saída do comparador discreto em estado baixo. Será devido a falta de resistores de base?
  12. @Mestre88 Na saída do comparador discreto, tem tensões de 0 ou 3.75 V, Os leds são apenas para entender visualmente o que esta acontecendo, na pratica, no lugar do led serão saídas para um ci. Pois bem, Quando esta em low, o led do estado baixo ascende, e o led estado alto apaga, porém quando a saída e high, o led de estado baixo permanece acesso, o que não deveria acontecer pois como o transistor e pnp e esta recebendo tensão de 3.5v, ele estaria em corte, não conduzindo corrente. Qual será o porque do led ascender? obs: Sem os leds funciona corretamente, só quero entender porque com os leds ele não apaga. obs 2: Na pratica sem os led, acontece o contrario, em low, a saída do transistor bc548 fica com valores de 3.80V.
  13. Oi @Mestre88 Então to usando um transistor bc558 pnp com resistor de pull down. Quando a chave está aberta há tensão entre a base e o coletor, esta tensão deveria estar ali? Quando a chave fecha a corrente flui e o transistor bc548 satura e o led ascende.
  14. Alguém online poderia me informar porque a tensão na base de um transistor quando medido entre a terra a base do transistor? Exemplo, num transistor pnp, ligo o emissor no 5v, e o coletor aterro com um resistor de 10k. Sem nenhum tipo de conexão na base, e medido o pino base com o terra, a tensão ali de 5v, por que?
  15. Após alguns testes finais, finalmente o circuito apresentou os resultados esperados: Funciona tanto na simulação, como na pratica. Há um resistor de pull-up no coletor de saída. Não sei como chegar ao resultado matematicamente, foi mais pelos testes, coloquei um potenciômetro no lugar de R4 quando deu 15k consegui um limiar de 0.08 em low e 5v em high, destaco que coloquei o potenciômetro no lugar R1 e R2 mão não fazia diferença no resultado. O que preciso agora é que, quando não haver V no "Tensão de Controle", apareça ali a mesma tensão do "POT MOTOR". Existe um "transistor ao contrario"? Que a corrente fosse do "pot do motor" para a entrada "tensão controle", e quando fosse polarizado a corrente deixasse de fluir? O que não sei se pode me atrapalhar é que só fica em high, quando a tensão de controle é 0.07 maior que a tensão de referencia(pot motor), isso para qualquer tensão, ou seja: Vref Vcontrole Saída 1v 1.02v 0v 1v 1.03v 0v 1v 1.07 5v Em testes aqui, quando a "tensão controle" e a "tensão pot do motor" são bem próximas, quase iguais, fica em LOW é o transistor pnp bc558 satura. O que não pode acontecer, já que faria que o motor girasse podendo alterar o valor do potenciômetro mesmo sem tensão de controle aplicada. O que eu poderia fazer para que quando as tensões de controle e pot do motor fossem iguais, o transistor pnp não saturasse?
  16. @Bommu Perneta o tda2030 apenas usei como exemplo, pois foi o mais próximo do amplificador que tenho aqui, tda2232m. Esses são amplificadores de áudio, me parece que não são bons para atuarem como comparadores, todos os amplificadores que testei que foram retirados de caixinhas de som e, não funcionaram, a saída sempre ficou em high. Na simulação o tda2030 sempre sai por volta de 1.5v, não sei se foi só no meu proteus, mas tanto high como low sempre aparece 1.5v na saída, isso aconteceu tanto na simulação, como na pratica usando os comparadores que encontrei, foi bem essa a razão de abrir o tópico, para saber se eles poderiam ser usados como comparadores. Ainda na simulação eu uso o amplificador 741 como comparador de tensão, pode observar que ele e ideal, pois em high a tensão e próximo a alimentação, já em low fica em 0.58 volts, usando um zener de 1.1v a tensão sempre fica ou 5v ou 0v. Quando eu for comprar amplificadores atentarei para os valores da saída.
  17. @Isadora Ferraz, sim , fiz pesquisa, na verdade do pesquisando até agora, foi assim que fui parar neste tópico que inclusive e um dos mais relevantes na busca. Estou a trabalhar nele, mas como já comentei esta dando uma diferença de 1.5v. Esse que você apresentou, eu tentei adaptar, mas como vou comparar duas tensões que se alteraram em relação ao tempo, deixei quieto. Quando eu for comprar o comparador, lembrarei da sua dica. Tentei por exemplo este schimitt trigger, com dois 2 e com 3 transistores mas não consegui adaptar para funcionar como um comparador. Nas buscas, em um forum, alguém tentou explicar como funciona um comparador discreto com transistores, mas não consegui entender muito bem, link aqui. O que mais me retornou resultados perto do esperado foi o circuito do Sergio, os resultados mais perto foram os que divulguei, estou a mudar o valor dos resistores para tentar uma aproximação melhor. Repetindo, vale o aprendizado e também para não ficar ocioso enquanto não obtenho os amplificadores operacionais propriamente dito. @Bommu Perneta, não bastaria por um zener na saída do comparador para obter low? Na simulação e isso que faço e da certo, não coloquei no circuito que postei aqui porque só estava exemplificando como eu pretendo usar o comparador. Nesta vídeo aula, Rodolfo explica que sempre fica uma tensão residual em certos amplificadores, e que com um zener ele "mata" ela, embora vi num artigo do newton braga que há amplificadores em que a saída em low vai próximo a 0v, só não lembro qual família de amplificadores era.
  18. Ah sim, bom se eu tivesse algum amplificador operacional, eu poderia efetuar os testes no meu circuito, eu estou ainda tentando o comparador discreto, se eu não conseguir, o jeito é pedir um pela internet e esperar alguns dias. Uma coisa que me correu aqui nos testes foi que, sem o resistor de pull up, com qualquer tensão de referencia, a saída so fica em high quando a tensão de controle for 1.5v maior que a tensão de referencia, exemplos: Vref Vcontrol Saída 1 0.5 0v 1 1 0v 1 1.5 0v 1 2v 0v 1 2.5v 5v Nesse caso, quando a tensão de controle fosse 1.5v, já era pra estar em high, mas isso só acontece quando o vcontrol for > 2.5v então a saída fica em high. Vref Vcontrol Saída 2.5 2 0v 2.5 2.5 0v 2.5 3.5 0v 2.5 4 5v 2.5 4.5v 5v Nesse caso, quando a tensão de controle fosse 3.0 v, já era pra estar em high, mas isso só acontece quando o vcontrol for > 4v então a saída fica em high Com a Vref = ou > que 3.5v, já não fica mais em high a saída. No meu ver possa ser que o resistor de entrada com valor de 1k esteja fazendo esse erro, porém não sei como resolver. Eu não me lembro onde vi, mas parece que um transistor por ter um comportamento de diodo necessita de pelo menos 0.69v para começar a saturar, isso ocorre mesmo? Vou testando aqui...
  19. Pra entenderem a minha insistência com esse comparador de tensão discreto, na cidade mais perto, Coromandel, fica a 100km, lá não encontrei cis comparadores de tensão, pedindo da internet, que é o que farei, demora entre 7 e 15 dias para chegar(aqui e interiorzão). Então entre esse meio tempo quero tentar soluções digamos, eletrônica pura. Por exemplo, comprei 3 destes ci's 555 para diversos circuitos, acabei queimando os 3, como precisava de um controlador pwm para controlar a velocidade do motor, nas pesquisas encontrei o multivibrador astavel, que solucionou o problema. @Bommu Perneta Você disse que fez um comparador para um circuito, você usou um pronto ou fez um usando transistores, se sim, pode me mostrar o circuito. Esse circuito que fiz baseando se no do Sergio funciona no simulador, porém na bancada ele não funciona corretamente. O que será que estou fazendo errado, testei todos os componentes separados, fiz outras placas mas o resultado e o mesmo. Fiz um teste colocando um resistor de pull-up entre a saída e os 5v da fonte, já que nesse circuito o e open-colector os resultados foram estranhos mas quase satisfatórios : numa tensão de valor fixo 0.94v na tensão de referencia, na tensão de controle com valores entre 0v e 2.58v a saída e alta, 5v, já entre 2.58v até 5v a saída e baixa. Eu nao consigo compreender este resultados.
  20. @Bommu Perneta, sobre o servo caseiro, tirei exemplos desses links: aqui, aqui, aqui e aqui. Como eu ainda estou a testar o que foi apresentado nos links, eu ainda estou "descobrindo" como isso sera feito. O potenciômetro vai alocado na caixa de redução e conectado ao pino inversor do comparador. O potenciômetro produz uma tensão de referência no pino, exemplo, se a tensão no pino e de 2.5v significa que ele está na posição 90 graus. Isso é uma suposição, claro que ele pode estar em qualquer outro angulo que sera analisado mais tarde, porém, sempre que que o pino estiver com 2.5v significa que o potenciômetro esta naquela determinada posição. Baseando se nisso, a 1.25v ele estará numa posição conhecida, a 0.625v ele estará também numa posição conhecida e assim por diante. Agora supondo que eu esteja em 1.25v no pino "inversor" (supondo 45 graus) e quero posicionar a 90 graus, 2.5v. Então na entrada não inversora eu aplico 2.5v, como 2.5v é maior que 1.25v, a saída e alta, na saída a um transistor pnp e um npn, npn satura e habilita o ci ponte h. O ci ponte h o da imagem, ele tem um pino que aplico um sinal pwm para o controle da velocidade do motor.(pino Vz). Com o ci habilitado em um dos sentidos de rotação(ainda terei que analisar qual sera o sentido correto em cada caso) o motor gira, e gira o potenciômetro também, ele vai girar até que a tensão no pino inversor iguale ao pino não inversor. Isso é o que eu acho que ira acontecer, como ainda não tenho o circuito de comparador de tensão, não sei se isso é real. Sobre o comparador, eu fiz o circuito que Sergio pro pros em outro tópico, pra minha surpresa ele funcionou como o esperado na simulação. Veja as fotos. Só que na pratica, ainda enfrento os mesmo erros que os amplificadores retirados de sucata, mesmo a A>B ou A<B ainda a tensão e positiva, só que pra minha maior surpresa, não são 5v, mas sim 12v, não sei da onde eles vieram já que uso uma fonte carregador de celular de 5v e 1A. Ainda farei alguns testes sobre o comparador discreto, afinal se funciona no simulador deveria funcionar na pratica, pelo menos com valores aproximados ja que estou a usar os mesmo componentes.
  21. Oi @Bommu Perneta, obrigado pelo contato. Meu intuito com o circuito comparador de tensão e construir um servo caseiro. Há esse esquema no site do Newton Braga. Em vez de sinal pwm para controlar o servo, seria usado uma escala de tensão no pino "não-inversor" do comparador. A tensão de referencia no pino "inversora" seria controlado por um potenciômetro acoplado a caixa de redução do motor. Suponha uma escala de 0 a 5v, onde 0v e a posição 0 graus do servo, e 5v e 180 graus. Se a tensão na entrada inversora for 2.5v, significa que o servo esta na posição 90 graus, se eu quero ir para a posição 45 graus, basta aplicar 1.25v na entrada. Neste exemplo, como a entrada inversora com 2.5v é maior que a entrada não inversora (1.25v) a saída é baixa, o que satura um transistor pnp, que por sua vez habilita um ci ponte h e faz o motor girar. O potenciômetro acoplado junto ao motor então gira até a posição em que a entrada inversora fica igual a não inversora, então o motor para. Isso e teoricamente, já esta pronto o motor com a redução, o potenciômetro e o circuito com o ci ponte h. porém travei na parte do comparador, porque aqui onde moro não tem eletrônica(a mais perto fica a 100km), é encontrei alguns amp op em sucatas para sem resultado, então estou a tentar um circuito comparador de tensão discreto.
  22. Obrigado pelo contato @Mestre88! Então aquele circuito não pode ser usado para comparar tensões, é isso?
  23. Obrigado pelo contato @Isadora Ferraz! Eu tentei o resistor de histerese, mesmo resultado, resistor de pull up e down. Neste tópico que inclusive você ajudou, @Sérgio Lembo fala sobre um comparador discreto usando transistores. Fui pesquisar mais um pouco mas não achei muita coisa. Simulei o circuito no Proteus usando os componentes que eu tenho na bancada, como os transistores bc558, bc548 resistores de 1k e potenciômetros de 100k para ajustar os valores de tensão nas entradas do circuito, tanto no Proteus como na prática até funciona, porém a tensão de saída é 0.01v ou -0.01 v. Eu tentei pesquisar em fóruns gringos mas a maioria dos circuitos consistia em algo com 6 ou mais transistores, diodos, MOSFETs, etc. Além também do Schmitt triger que um forista recomendou, mas me parece que não dá pra substituir um comparador de tensão. Então peço ajuda para montar esse comparador discreto, possivelmente deve ser os valores dos resistores que coloquei. Fico no aguardo!

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!