Op Elektronicaforum.nl is de kans om een antwoord op je vraag te krijgen heel groot. In overzichtelijke subcategorieën kun je vragen en antwoorden over elektronica zoeken, plaatsen en beantwoorden.
Elektronica Forum is onderdeel van Schakelingen Online
 


 
klok van 4 electro-mechanisch 7segment display's

 
Plaats nieuw bericht   Plaats Reactie    ElektronicaForum Forum Index -> Digitaal
Auteur Bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Za 12 Mrt 2022, 16:23    Onderwerp: klok van 4 electro-mechanisch 7segment display's Reageer met quote

Beste Forumlezers,

Ik probeer een 7segment display van de volgende fabrikant aan te sturen:
https://flip-digits.com/

De 'attachment' is een plaatje van mijn breadboard, ik heb 1 spoel getekend, maar er zijn er 7 (per display)

Linker shift-register stuurt een 0 als het segment verborgen moet worden en het rechter
shift-register dan een 1.
bijv voor een 8 wordt dit 0000000x 1111111x (0x00FE)

Het werkte voor een paar seconden. Het rechter exemplaar van de darlington array is/was kapot. 2 pootjes geven niets door, en ic wordt heel heet.

Enig idee wat ik fout doe?

(het is waarschijnlijk wel duidelijk, maar ik ben een absolute beginner)


Met vriendelijke groet,

Han Smolders




Fritzing
7SegmentTest_bb.pdf - 909.97 KB
42 keer

Naar boven
Bekijk gebruikers profiel Stuur privé bericht
smd_lover
Moderator
Moderator


Geregistreerd op: 24-3-2009
Berichten: 1798
Woonplaats: prov Groningen.

BerichtGeplaatst: Za 12 Mrt 2022, 19:51    Onderwerp: Reageer met quote

Je mag maar een kort stroompulsje geven bij dit soort displays.
Hoe doe je de aansturing?
_________________
Hoe zorgvuldiger je als topicstarter je probleem omschrijft, hoe meer kans op adequate reacties en een oplossing.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Za 12 Mrt 2022, 21:33    Onderwerp: Reageer met quote

beste smd_lover,

De aansturing is vanaf een arduino (wemos d1 mini):
de puls is 75 millisecondes.

Code:

#include <Arduino>

int DS_pin = D5;
int STCP_pin = D3;
int SHCP_pin = D2;

int dec_digits [11] {0x807E, 0xF20C, 0x48B6, 0x609E, 0x32CC,0x24DA, 0x04FA, 0xF00E, 0x00FE, 0x20DE, 0xFE00};

void setup() {

  pinMode(DS_pin, OUTPUT);
  pinMode(STCP_pin, OUTPUT);
  pinMode(SHCP_pin, OUTPUT);

}

void loop() {

  digitalWrite(STCP_pin, LOW);
 
  for (int i=0;i<11>> 8);
    shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i]);
    digitalWrite(STCP_pin, HIGH);
    delay(75);
    digitalWrite(STCP_pin, LOW);
    delay(1000);
  }
}


Met vriendelijke groet,

Han Smolders
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
smd_lover
Moderator
Moderator


Geregistreerd op: 24-3-2009
Berichten: 1798
Woonplaats: prov Groningen.

BerichtGeplaatst: Za 12 Mrt 2022, 21:46    Onderwerp: Reageer met quote

De bovenste 2 ic's zitten niet op de +voeding aangesloten.
_________________
Hoe zorgvuldiger je als topicstarter je probleem omschrijft, hoe meer kans op adequate reacties en een oplossing.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Za 12 Mrt 2022, 21:59    Onderwerp: Reageer met quote

Mijn excuses. Vergeten te tekenen in fritzing. In werkelijkheid komt er 5 volt en aarde vanaf de arduino naar de bovenste rails.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
smd_lover
Moderator
Moderator


Geregistreerd op: 24-3-2009
Berichten: 1798
Woonplaats: prov Groningen.

BerichtGeplaatst: Za 12 Mrt 2022, 22:15    Onderwerp: Reageer met quote

I.p.v. de spoel zou je een klein gloeilampje kunnen aansluiten.
En dan nameten of de signalen wel kloppen. Je kan de tijden in de sketch dan ook even tijdelijk heel lang zetten zodat je makkelijk kunt meten.
Ik zie ook niet hoe de stroom loopt door de spoel omdat hij op 2 ULN-uitgangen zit aangesloten?
_________________
Hoe zorgvuldiger je als topicstarter je probleem omschrijft, hoe meer kans op adequate reacties en een oplossing.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Za 12 Mrt 2022, 22:32    Onderwerp: Reageer met quote

Hartelijk dank voor de tip met het gloeilampje, dat ga ik zeker doen. Mijn vermoeden is dat de pulsjes over de verschillende kanalen wel kloppen. Maar het kan geen kwaad om daar zekerheid over te hebben. Wat de laatste opmerking betreft:
Ik geloof dat ik even goed moet nadenken, want dat klopt natuurlijk van de aansluiting op 2 uitgangen.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Zo 13 Mrt 2022, 11:42    Onderwerp: Reageer met quote

Ik had de werking van een darlington array niet goed begrepen.
Hierbij de nieuwe tekening
Ik kan het niet testen op dit moment omdat 1 van de darlington array's blijkbaar kapot is.
Maar is het mogelijk/goed idee om 2 uitgangen te combineren?





7Segment_V2.pdf - 939.7 KB
34 keer

Naar boven
Bekijk gebruikers profiel Stuur privé bericht
smd_lover
Moderator
Moderator


Geregistreerd op: 24-3-2009
Berichten: 1798
Woonplaats: prov Groningen.

BerichtGeplaatst: Zo 13 Mrt 2022, 12:39    Onderwerp: Reageer met quote

Je kan alle 7 spoelen toch gewoon met 1 uln aansturen mits de software klopt.
De plus van de uln moet ook aangesloten worden zodat de interne diodes de uln kunnen beschermen tegen de spanningspiek die een spoel veroorzaakt bij uitschakelen.
_________________
Hoe zorgvuldiger je als topicstarter je probleem omschrijft, hoe meer kans op adequate reacties en een oplossing.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Zo 13 Mrt 2022, 13:23    Onderwerp: Reageer met quote

Beste smd_lover,

Hartelijk dank voor de ondersteuning. Het was mijn plan om 2 uln's te gebruiken waarbij 1 de uitgeklapte elementen zou doen en de andere de ingeklapte.
Misschien is dit te complex. Ik zit nu te denken om 1 uln te gebruiken maar de software in 2 stappen te doen. Eerst de hele display 'blank' en dan het cijfer maken.

Ik heb nog een vraag over het tijdelijk aansluiten van de display met het breadboard.
Ik zit nu te hannessen met 14 jump kabeltjes. Ik wilde een soort breakout board maken voor de display of een pcb. (nog nooit gedaan) Is er een beter idee?
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Ma 14 Mrt 2022, 8:45    Onderwerp: Reageer met quote

Ik krijg het complete beeld niet goed in mijn hoofd of op papier.

Om de individuele elementen van de display heen en terug te klappen moet ook de polariteit van de spoel worden omgezet. In de versie hiervoor gebruikte ik een h-brug
dit werkte. Maar de hoeveelheid h-bruggen maakte het wat ingewikkeld.
Vandaar de 2 uln's. Is er een mogelijkheid om de polariteit te schakelen na de darlington array?
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
smd_lover
Moderator
Moderator


Geregistreerd op: 24-3-2009
Berichten: 1798
Woonplaats: prov Groningen.

BerichtGeplaatst: Ma 14 Mrt 2022, 11:03    Onderwerp: Reageer met quote

Ja als het moet omgepoold dan moet je wel een H-brug hebben of een halve brug i.c.m. 2 voedingsspanningen.
Maar daar zijn toch mooie ic's voor. Bijvoorbeeld de L298 of L293. Dan heb je die uln niet nodig.
_________________
Hoe zorgvuldiger je als topicstarter je probleem omschrijft, hoe meer kans op adequate reacties en een oplossing.
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Di 22 Mrt 2022, 10:30    Onderwerp: Reageer met quote

Ben weer terug bij de H-bruggen. De display werkt, het circuit klopt.
Er is 1 hardnekkig probleem. De spoelen worden heel heet.
Heeft iemand enig idee wat ik fout doe?

Hierbij de specificaties van het display:
https://store.i-t.com/wp-content/uploads/2019/04/electromagnetic_small_7segment_display2.pdf





7Segment_H_Bridge_bb.png

7Segment_H_Bridge_bb.png - 4854 keer

Naar boven
Bekijk gebruikers profiel Stuur privé bericht
stynus
Site Admin
Site Admin


Geregistreerd op: 16-5-2003
Berichten: 5868
Woonplaats: Overpelt (België)

BerichtGeplaatst: Wo 23 Mrt 2022, 0:21    Onderwerp: Reageer met quote

Dan stuur je ze te lang aan. In de datasheet zie ik pulse with 1 msec. Dat is heel kort. Daarna pas weer een puls geven als je wil ompolen. Op die tijd kunnen ze niet veel opwarmen.
_________________
Met vriendelijke groet,
Stynus
http://www.elektronicastynus.be

--> Elektronica bouwpakketten en componenten te koop. <--
Naar boven
Bekijk gebruikers profiel Stuur privé bericht Bekijk de homepage
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Wo 23 Mrt 2022, 12:26    Onderwerp: Reageer met quote

De puls was 75 milliseconden, Is nu 1 millseconde. wachttijd daarna 1999 milliseconden.
De spoelen worden nog steeds heel heet. Op een of andere manier verdenk ik het shift register. Ik zou niet weten hoe of waarom :-)

Hierbij de laatste code.

[code]
#include <Arduino.h>

int DS_pin = D5;
int STCP_pin = D3;
int SHCP_pin = D2;

int dec_digits [11] {0x807E, 0xF20C, 0x48B6, 0x609E, 0x32CC,0x24DA, 0x04FA, 0xF00E, 0x00FE, 0x20DE, 0xFE00};

void setup() {

pinMode(DS_pin, OUTPUT);
pinMode(STCP_pin, OUTPUT);
pinMode(SHCP_pin, OUTPUT);

}

void loop() {

for (int i=0;i<11;i++) {
shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i] >> 8);
shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i]);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);
delay(1999);
}
}

[/code]
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
stynus
Site Admin
Site Admin


Geregistreerd op: 16-5-2003
Berichten: 5868
Woonplaats: Overpelt (België)

BerichtGeplaatst: Wo 23 Mrt 2022, 22:10    Onderwerp: Reageer met quote

Met die code stuur je de spoelen nog continu. Meet maar eens met een multimeter.

Code:
for (int i=0;i<11>> 8);
shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i]);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);
delay(10);

//Terug 0 uitsturen
shiftOut(DS_pin, SHCP_pin, MSBFIRST,0 >> 8);
shiftOut(DS_pin, SHCP_pin, MSBFIRST,0);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);


delay(1999);
}

_________________
Met vriendelijke groet,
Stynus
http://www.elektronicastynus.be

--> Elektronica bouwpakketten en componenten te koop. <--
Naar boven
Bekijk gebruikers profiel Stuur privé bericht Bekijk de homepage
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Do 24 Mrt 2022, 8:41    Onderwerp: Reageer met quote

Beste Stynus,

Mag ik u hartelijk danken! Probleem opgelost. De werking van een shift-register dringt
langzaam door bij mij Smile
Hierbij de laatste code. Ik heb de code tags wegelaten want een regel wordt niet goed weergegeven. Nogmaals hartelijk dank!

#include <Arduino>

int DS_pin = D5;
int STCP_pin = D3;
int SHCP_pin = D2;

int dec_digits [11] {0x807E, 0xF20C, 0x48B6, 0x609E, 0x32CC,0x24DA, 0x04FA, 0xF00E, 0x00FE, 0x20DE, 0xFE00};

void setup() {

pinMode(DS_pin, OUTPUT);
pinMode(STCP_pin, OUTPUT);
pinMode(SHCP_pin, OUTPUT);

}

void loop() {

for (int i=0;i<11>> Cool;
shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i]);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);
delay(10);

//Terug 0 uitsturen
shiftOut(DS_pin, SHCP_pin, MSBFIRST,0 >> Cool;
shiftOut(DS_pin, SHCP_pin, MSBFIRST,0);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);

delay(1999);
}
}
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
hansan



Geregistreerd op: 11-3-2022
Berichten: 11

BerichtGeplaatst: Do 24 Mrt 2022, 8:44    Onderwerp: Reageer met quote

Het lijkt erop dat ook emoticons in de code kunnen doordringen.

#include <Arduino.h>

int DS_pin = D5;
int STCP_pin = D3;
int SHCP_pin = D2;

int dec_digits [11] {0x807E, 0xF20C, 0x48B6, 0x609E, 0x32CC,0x24DA, 0x04FA, 0xF00E, 0x00FE, 0x20DE, 0xFE00};

void setup() {

pinMode(DS_pin, OUTPUT);
pinMode(STCP_pin, OUTPUT);
pinMode(SHCP_pin, OUTPUT);

}

void loop() {

for (int i=0;i<11;i++) {
shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i] >> 8);
shiftOut(DS_pin, SHCP_pin, MSBFIRST,dec_digits[i]);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);
delay(10);

//Terug 0 uitsturen
shiftOut(DS_pin, SHCP_pin, MSBFIRST,0 >> 8);
shiftOut(DS_pin, SHCP_pin, MSBFIRST,0);
digitalWrite(STCP_pin, HIGH);
delay(1);
digitalWrite(STCP_pin, LOW);

delay(1999);
}
}
Naar boven
Bekijk gebruikers profiel Stuur privé bericht
Plaats nieuw bericht   Plaats Reactie    ElektronicaForum Forum Index -> Digitaal Tijden zijn in GMT + 2 uur
Pagina 1 van 1                     

 
Ga naar:  
Je mag geen nieuwe onderwerpen plaatsen
Je mag geen reacties plaatsen
Je mag je berichten niet bewerken
Je mag je berichten niet verwijderen
Ja mag niet stemmen in polls
Je mag geen attachments plaatsen in dit forum
Je mag bestanden downloaden in dit forum


Powered by phpBB © 2001, 2002 phpBB Group and phpBB SEO