Мазмуну:

UltraSonic Liquid Level Controller: 6 кадам (Сүрөттөр менен)
UltraSonic Liquid Level Controller: 6 кадам (Сүрөттөр менен)

Video: UltraSonic Liquid Level Controller: 6 кадам (Сүрөттөр менен)

Video: UltraSonic Liquid Level Controller: 6 кадам (Сүрөттөр менен)
Video: ПОЛТЕРГЕЙСТ 5 УРОВНЯ СНОВА НЕ ДАЕТ ПОКОЯ, ЖУТКАЯ АКТИВНОСТЬ / LEVEL 5 POLTERGEIST, CREEPY ACTIVITY 2024, Ноябрь
Anonim
UltraSonic суюктуктун деңгээлин көзөмөлдөөчү
UltraSonic суюктуктун деңгээлин көзөмөлдөөчү

Белгилүү болгондой, Иранда аба ырайы кургак жана менин өлкөмдө суу жетишсиз. Кээде, өзгөчө жай мезгилинде, өкмөт сууну кесип жатканын көрүүгө болот. Ошентип, батирлердин көбүндө суу сактагыч бар. Биздин батирде суу менен камсыз кылган 1500 литрлик бак бар. Ошондой эле, биздин батирде 12 турак жай бар. Натыйжада, танк жакын арада бош калат деп күтүүгө болот. Цистернага суу насосу орнотулган, ал имаратка суу жөнөтөт. Цистерна бош калган сайын насос суусуз иштейт. Бул абал мотордун температурасынын жогорулашына алып келет жана убакыттын ичинде ал насостун иштен чыгышына алып келиши мүмкүн. Бир аз убакыт мурун, бул насостун иштен чыгышы биз үчүн экинчи жолу болду жана моторду ачкандан кийин, биз катушка зымдары күйүп кеткенин көрдүк. Насосту алмаштыргандан кийин, бул көйгөйдү кайра алдын алуу үчүн, мен суунун деңгээлин көзөмөлдөгүч жасоону чечтим. Суу цистернадагы эң төмөнкү чектен төмөн болгондо, мен насостун электр менен камсыздалышын кыскартуу үчүн схема түзүүнү пландадым. Суу жогорку чекке көтөрүлмөйүнчө насос иштебейт. Жогорку чектен өткөндөн кийин, схема электр энергиясын кайра туташтырат. Башында мен ылайыктуу схеманы таба аламбы деп интернеттен издедим. Бирок, мен ылайыктуу эч нерсе тапкан жокмун. Кээ бир Arduino негизделген суу көрсөткүчтөрү бар болчу, бирок ал жерде менин көйгөйүмдү чече алган жок. Жыйынтыгында мен суунун деңгээлин көзөмөлдөгүчтү долбоорлоону чечтим. Параметрлерди орнотуу үчүн жөнөкөй графикалык колдонуучу интерфейси бар бардыгы бир пакетте. Ошондой эле, мен түзмөк ар кандай жагдайларда жарактуу иштээрине ынануу үчүн EMC стандарттарын карап чыгууга аракет кылдым.

1 -кадам: Принцип

Принцип
Принцип

Балким, сиз принципти мурунтан эле билсеңиз керек. УЗИ импульстук сигналын объектке карай чыгарганда, ал объект тарабынан чагылдырылат жана жаңырык жөнөтүүчүгө кайтат. УЗИ импульсунун басып өткөн убактысын эсептесеңиз, нерсенин алыстыгын таба аласыз. Биздин учурда, пункт суу болуп саналат.

Көңүл буруңуз, сууга чейинки аралыкты тапканыңызда, резервуардагы бош орундун көлөмүн эсептеп жатасыз. Суунун көлөмүн алуу үчүн, танктын жалпы көлөмүнөн эсептелген көлөмдү алып салыш керек.

2 -кадам: сенсор, кубаттуулук жана контролер

Сенсор, кубат берүү жана контролер
Сенсор, кубат берүү жана контролер
Сенсор, кубат берүү жана контролер
Сенсор, кубат берүү жана контролер
Сенсор, кубаттуулук жана контролер
Сенсор, кубаттуулук жана контролер
Сенсор, кубат берүү жана контролер
Сенсор, кубат берүү жана контролер

Аппараттык

Сенсор үчүн мен JSN-SR04T суу өткөрбөй турган УЗИ сенсорун колдондум. Жумуш тартиби HC-SR04 (жаңырык жана триг пин) сыяктуу.

Өзгөчөлүктөрү:

  • Аралыгы: 25смден 450смге чейин
  • Иш чыңалуусу: DC 3.0-5.5V
  • Иштөө агымы: m 8mA
  • Тактык: ± 1см
  • Жыштыгы: 40 кГц
  • Иштөө температурасы: -20 ~ 70 ℃

Бул контролердун кээ бир чектөөлөрү бар экенин эске алыңыз. мисалы: 1- JSN-SR04T 25CMден төмөн аралыкты өлчөй албайт, андыктан сенсорду суунун үстүнөн 25Смден кем эмес орнотушуңуз керек. Мындан тышкары, максималдуу аралыкты өлчөө 4.5M. Ошентип, бул сенсор чоң танктар үчүн ылайыктуу эмес. 2- тактык бул сенсор үчүн 1CM. Натыйжада, танктын диаметри боюнча, түзмөк көрсөтө турган көлөмдүн чечилиши ар кандай болушу мүмкүн. 3- үн ылдамдыгы температурага жараша өзгөрүшү мүмкүн. Натыйжада, тактыкка ар кайсы аймактар таасир этиши мүмкүн. Бирок, бул чектөөлөр мен үчүн чечүүчү мааниге ээ эмес болчу жана тактык ылайыктуу болгон.

Контроллер

Мен STMicroelectronicsтен STM32F030K6T6 ARM Cortex M0 колдондум. Бул микроконтроллердин өзгөчөлүгүн бул жерден таба аласыз.

Power Supply

Биринчи бөлүгү 220V/50Hz (Иран Электр) 12VDC айландыруу болуп саналат. Ушул максатта, мен HLK-PM12 бактын баскычын түшүрүүчү электр модулун колдондум. Бул AC/DC конвертери 90 ~ 264 VACти 0,25A чыгаруу агымы менен 12VDCге алмаштыра алат.

Белгилүү болгондой, релени индуктивдүү жүктөө схемада жана электр менен камсыздоодо бир нече көйгөйлөрдү жаратышы мүмкүн, ал эми электр менен камсыздоонун татаалдыгы, айрыкча микроконтроллерде, туруксуздукка алып келиши мүмкүн. Чечим - энергия булактарын изоляциялоо. Ошондой эле, сиз реле контактыларында snubber схемасын колдонушуңуз керек. Электр булактарын изоляциялоонун бир нече ыкмалары бар. Мисалы, эки чыгышы бар трансформаторду колдонсоңуз болот. Мындан тышкары, кичинекей өлчөмдө DC/DC конверторлору бар, алар чыгууну кирүүдөн бөлүп алышат. Мен бул үчүн MINMAX MA03-12S09 колдондум. Бул изоляцияланган 3W DC/DC конвертери.

3 -кадам: Supervisor IC

Супервайзер IC
Супервайзер IC

TI App эскертүүсүнө ылайык: Чыңалуу көзөмөлчүсү (ошондой эле баштапкы абалга келтирүү интегралдык микросхемасы [IC] деп аталат) - бул системанын электр менен камсыздалышын көзөмөлдөгөн чыңалуу мониторунун бир түрү. Чыңалуу көзөмөлчүлөрү көбүнчө процессорлор, чыңалуу жөнгө салуучулар жана секвенерлер менен колдонулат - жалпысынан, бул жерде чыңалуу же токту сезүү талап кылынат. Көзөмөлчүлөр чыңалуу рельсин көзөмөлдөп, кубаттуулукту камсыз кылат, мүчүлүштүктөрдү аныктайт жана тутумдун ден соолугун камсыз кылуу үчүн камтылган процессорлор менен байланышат. бул колдонмонун эскертүүсүн бул жерден таба аласыз. STM32 микроконтроллеринде камтылган монитордун кубаттуулугу сыяктуу камтылган көзөмөлчүлөр болсо да, мен баары жакшы иштешин камсыз кылуу үчүн тышкы көзөмөл чипин колдондум. Менин учурда, мен TIден TL7705 колдондум. Төмөндө бул IC үчүн Texas Instruments веб-сайтынан сүрөттөмөнү көрө аласыз: TL77xxA интегралдык микросхема менен камсыздоо-чыңалуу көзөмөлчүлөрүнүн үй-бүлөсү микрокомпьютерде жана микропроцессордук системаларда баштапкы абалга келтирүү контроллери катары колдонуу үчүн атайын иштелип чыккан. Жеткирүү-чыңалуу көзөмөлдөөчүсү SENSE киришиндеги чыңалуу шарттары үчүн жабдууну көзөмөлдөйт. Күйгүзүү учурунда, VCC 3.6 Вга жакындаганда RESET чыгаруусу активдүү (төмөн) болуп калат Бул учурда (SENSE VIT+жогору деп ойлоп), кечигүү таймеринин функциясы убакытты кечиктирүүнү иштетет, андан кийин RESET жана RESET (ЭМЕС) активдүү эмес (тиешелүүлүгүнө жараша жогорку жана төмөн). Кадимки иштөө учурунда начар чыңалуу шарты пайда болгондо, RESET жана RESET (NOT) активдүү болот.

4 -кадам: Басылган схема (PCB)

Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)
Басып чыгарылган схема (PCB)

Мен ПХБны эки бөлүктөн түздүм. Биринчиси - бул лента/жалпак кабель менен mainboardго туташкан LCD PCB, экинчи бөлүгү контролер PCB. Бул ПКБда мен электр менен камсыздоону, микроконтроллерди, УЗИ сенсорун жана тиешелүү компоненттерди жайгаштырдым. Ошондой эле реле, varistor жана snubber схемасы болгон күч бөлүгү. Белгилүү болгондой, менин релемде колдонулган реле сыяктуу механикалык реле, эгер алар дайыма иштесе, ажырап кетиши мүмкүн. Бул көйгөйдү чечүү үчүн, мен реленин кадимки тыгыз байланышын (NC) колдондум. Ошентип, кадимки абалда, реле активдүү эмес жана адатта тыгыз байланыш насостун кубатын өткөрө алат. Суу төмөнкү чектен төмөн болгондо, реле күйөт жана бул электр энергиясын өчүрөт. Муну айтканымдын себеби, мен NC жана COM контактыларында snubber схемасын колдондум. Насостун кубаттуулугу жогору экендигине байланыштуу, мен ал үчүн экинчи 220 релесин колдондум жана аны ПХБдагы реле менен айдайм.

Сиз менин GitHub'ымдан Altium PCB файлдары жана Gerber файлдары сыяктуу PCB файлдарын бул жерден жүктөп алсаңыз болот.

5 -кадам: Код

Image
Image
Танкка орнотуу
Танкка орнотуу

Мен STM32Cube IDE колдондум, ал STMicroelectronicsтен кодду иштеп чыгуу үчүн баардыгы бирдиктүү чечим. Бул GCC ARM компилятору менен Eclipse IDEге негизделген. Ошондой эле, анын ичинде STM32CubeMX бар. Көбүрөөк маалыматты бул жерден таба аласыз. Башында мен танктын өзгөчөлүгүн камтыган код жаздым (Бийиктиги жана Диаметри). Бирок, мен ар кандай өзгөчөлүктөргө негизделген параметрлерди орнотуу үчүн аны GUIге өзгөртүүнү чечтим.

6 -кадам: Танкка орнотуу

Танкка орнотуу
Танкка орнотуу
Танкка орнотуу
Танкка орнотуу

Акыр -аягы, мен ПХДны суудан коргоо үчүн жөнөкөй куту жасадым. Ошондой эле, мен танктын үстүнө сенсорду коюу үчүн тешик жасадым.

Сунушталууда: