Serwisy partnerskie:
Close icon
Serwisy partnerskie

Symulacja czujnika ultradźwiękowego w Proteusie

Kompletny poradnik po symulacji czujnika ultradźwiękowego w programie Proteus.
Article Image
1. Praktyczny Kurs Arduino - przewodnik po artykułach składających się na kurs 2. Czym jest Arduino? 3. Porównanie Arduino z Raspberry Pi 4. Instalacja sterownika Arduino w systemie Windows 5. Generowanie pliku hex w Arduino 6. Jak wgrać bootloader w Atmega328? 7. Rozpoczęcie pracy z oprogramowaniem Arduino 8. Rozpoczęcie programowania w Arduino 9. Programowe resetowanie Arduino 10. Wprowadzenie do Arduino UNO 11. Wprowadzenie do Arduino NANO 12. Wprowadzenie do Arduino Pro Mini 13. Wprowadzenie do Arduino Mega 2560 14. Wprowadzenie do Arduino Due 15. Wprowadzenie do Arduino Lilypad 16. Wprowadzenie do ATmega328 17. Biblioteka Arduino dla Proteusa 18. Projekt płytki drukowanej Arduino UNO dla Proteus ARES 19. Biblioteka Arduino Lilypad dla Proteusa 20. Odczyt z portu szeregowego Arduino 21. Projektowanie układów LCD z Arduino 22. Łączenie klawiatury z Arduino 23. Wartość ADC na LCD przy użyciu Arduino 24. Symulacja czujnika ultradźwiękowego w Proteusie 25. Połączenie czujnika ultradźwiękowego z Arduino 26. Wiele czujników ultradźwiękowych z Arduino 27. Czujnik temperatury 18B20 z Arduino 28. Jak używać 18B20 w Proteus ISIS? 29. Łączenie LM35 z Arduino w Proteusie 30. Współpraca siedmiosegmentowego wyświetlacza z Arduino w Proteusie 31. Łączenie czujnika PIR z Arduino 32. Współpraca czujnika płomienia z Arduino 33. Interfejs NRF24L01 z Arduino 34. NRF24L01+ i Arduino - Response Timed Out 35. Połączenie RFID RC522 z Arduino 36. Komunikacja Bluetooth z Arduino przy użyciu HC05 37. Sterowanie serwomotorem za pomocą Arduino w Proteusie 38. Projekt sterowania sygnalizacją świetlną przy użyciu Arduino 39. Przewijanie tekstu na matrycy LED 8×8 z użyciem Arduino 40. Inteligentny system oszczędzania energii 41. Komunikacja USB pomiędzy Androidem i Arduino 42. Automatyka domowa z użyciem XBee i Arduino 43. Domowy system bezpieczeństwa oparty na GSM 44. Wysyłanie SMS-ów za pomocą Arduino UNO i SIM900 45. Odbieranie SMS-ów za pomocą komend AT przy użyciu Arduino 46. Projekt rozpoznawania głosu przy użyciu EasyVR Shield 47. Rozpoczęcie pracy z programem EasyVR Commander 48. Połączenie EasyVR z Arduino UNO 49. Błąd szkolenia - niepowodzenie rozpoznawania w EasyVR 50. Połączenie XBee z komputerem 51. Wprowadzenie do modułu XBee 52. Interfejs XBee z Arduino 53. Rozpoczęcie pracy z kamerą Pixy 54. Jak zainstalować oprogramowanie kamery Pixy - PixyMon 55. Aktualizacja firmware kamery Pixy do najnowszej wersji 56. Jak wytrenować kamerę Pixy za pomocą komputera 57. Sterowanie kierunkiem obrotu silnika prądu stałego za pomocą Arduino 58. Sterowanie prędkością obrotów silnika prądu stałego za pomocą Arduino
Rozwiń cały spis treści Zwiń spis treści

Witajcie przyjaciele, kilka dni temu opublikowałem bibliotekę czujników ultradźwiękowych dla Proteusa, za pomocą której można łatwo symulować czujnik ultradźwiękowy w Proteusie. Post został bardzo pochwalony przez czytelnika i otrzymałem całkiem niezły feedback od osób obserwujących. Pomyślałem więc, że podzielę się kilkoma przykładami z nim związanymi, tak aby użytkownik mógł w pełni zrozumieć jak używać czujnika ultradźwiękowego w Proteusie. Dzisiaj przyjrzymy się różnym symulacjom czujników ultradźwiękowych w Proteusie. Jeśli nie czytałeś poprzedniego postu, to najpierw zajrzyj do niego, ponieważ bez instalacji Ultrasonic Sensor Library w Proteusie, nie będziesz mógł skorzystać z tych przykładów.

Czujnik ultradźwiękowy jest szeroko stosowany w systemach wbudowanych.

Dzisiaj, podzielę się trzema przykładami symulacji czujnika ultradźwiękowego w Proteus, które wystarczą, abyście mogli zapoznać się z tym czujnikiem. Załączyłem również te symulacje poniżej i możesz je łatwo pobrać, ale jak zwykle radzę, lepiej zaprojektować je symulacje samodzielnie i napisać swój własny kod, ponieważ pomoże ci to go lepiej zrozumieć. Jeśli nie będziesz popełniać błędów, nie będziesz się na nich uczyć. Poniżej przedstawię trzy przykłady czujników ultradźwiękowych:

  • Przycisk
  • Zbliżeniowy
  • Przełącznik

Symulacje czujników ultradźwiękowych w Proteusie przy użyciu przycisku

W tym poradniku użyjemy trzech przycisków i za ich pomocą będziemy sterować naszym czujnikiem ultradźwiękowym.

Pomyśl o tych przyciskach jak o trzech przeszkodach, które są umieszczone w różnych odległościach, jeśli naciśniemy pierwszy przycisk, to pierwsza przeszkoda zostanie osiągnięta, jeśli naciśniemy drugi to druga przeszkoda i tak samo dla trzeciej.

Więc, otwórz Proteus ISIS i jeśli masz już zainstalowaną bibliotekę ultradźwiękowa dla Proteusa, zaprojektuj symulację czujnika ultradźwiękowego w Proteusie jak pokazano na poniższym rysunku:

Teraz otwórz oprogramowanie Arduino i wklej w nim poniższy kod, a otrzymasz plik hex do załadowania w tej symulacji.

Uwaga:

Najpierw powinieneś przeczytać jak pobrać plik Hex z Arduino.

Nie zapomnij wgrać pliku UltrasonicTEP.HEX do swojego Ultrasonic Sensor tak jak to zrobiliśmy w bibliotece Ultrasonic dla Proteusa.

const int pingPin = 7;
const int echoPin = 6;

void setup()
{

Serial.begin(9600);

}

void loop()
{
long duration, inches, cm;
pinMode(pingPin, OUTPUT);
digitalWrite(pingPin, LOW);
delayMicroseconds(2);
digitalWrite(pingPin, HIGH);
delayMicroseconds(10);
digitalWrite(pingPin, LOW);
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
inches = microsecondsToInches(duration);
cm = microsecondsToCentimeters(duration);
Serial.print(inches);
Serial.print("in, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();

delay(100);
}

long microsecondsToInches(long microseconds)
{
return microseconds / 74 / 2;
}

long microsecondsToCentimeters(long microseconds)
{
return microseconds / 29 / 2;
}

Po dodaniu pliku hex do tej symulacji, naciśnij przycisk RUN i jeśli wszystko pójdzie zgodnie z oczekiwaniami, otrzymasz symulację jak pokazano na poniższym rysunku:

Możesz pobrać tę symulację wraz z kodem i plikiem hex Arduino klikając link na końcu artykułu.

Symulacje czujnika ultradźwiękowego w Proteusie jako przełącznika zbliżeniowego

Wyjaśniłem już szczegółowo pierwszy przykład, więc nie będę zbytnio tego wyjaśniał.

W tym przykładzie używamy czujnika ultradźwiękowego jako przełącznika zbliżeniowego, gdy tylko jakakolwiek przeszkoda pojawi się na drodze czujnika ultradźwiękowego, automatycznie da on sygnał.

Jak widać na poniższym rysunku, używamy zmiennego źródła napięcia dla pinu analogowego czujnika ultradźwiękowego.

Należy więc najpierw zaprojektować symulację, jak pokazano na poniższym rysunku:

Teraz wgraj plik hex Arduino dla tego przykładu, który jest załączony poniżej wraz z kodem i tą symulacją.

Po załadowaniu pliku hex, naciśnij przycisk RUN i jeśli wszystko działa jak powinno, wtedy zobaczysz wyniki podobne do poniższego zrzutu ekranu:

Jak widać na powyższym rysunku, wysyłamy Ping z czujnika ultradźwiękowego, a w kodzie programistycznym umieściliśmy alarm w określonej odległości, więc gdy tylko jakiś obiekt znajdzie się w tym zasięgu, nasz program da nam alarm.

Można również użyć Buzzer'a w Proteusie.

Możesz pobrać tę symulację Proteusa wraz z kodem Arduino i plikiem hex klikając link na końcu artykułu.

Symulacje czujników ultradźwiękowych w Proteusie z wykorzystaniem przełącznika

Oto trzeci i ostatni przykład symulacji czujnika ultradźwiękowego w Proteusie.

W tej symulacji używamy przełącznika i kontrolujemy czujnik ultradźwiękowy za pomocą tego przełącznika.

Dla tego przełącznika istnieją w sumie cztery stany, które określają jakie powinno być napięcie na pinie analogowym czujnika ultradźwiękowego.

Umieściłem również oscyloskop w tej symulacji, który da ci stan napięcia dla tego przełącznika, abyś miał pojęcie, jaki jest wzór napięcia przychodzącego do czujnika ultradźwiękowego. Jest to głównie dla lepszego zrozumienia i testowania.

Uwaga: Jeżeli nie jesteś zaznajomiony z oscyloskopem w Proteusie to przeczytaj jak używać Oscyloskopu w Proteusie.

Teraz załaduj do niego swój plik hex Arduino i naciśnij przycisk RUN, a zobaczysz coś takiego:

Jak widać powyżej, wirtualny terminal pokazuje odległości, podczas gdy oscyloskop podaje nam stan przełącznika. Pobaw się tym, a dowiesz się więcej. Jeśli nadal masz wątpliwości, pytaj w komentarzach.

Możesz pobrać symulację Proteusa dla tego przykładu wraz z plikiem hex i kodem Arduino klikając link na końcu artykułu.

To wszystko na dziś, mam nadzieję, że czegoś się dziś nauczyliście.

Jeśli macie jakieś problemy lub pytania, pytajcie, a ja postaram się je rozwiązać.

Trzymajcie się!

Wykaz elementów
Ilość
Symbol
Nazwa/opis/gdzie kupić

Artykuł Ultrasonic Sensor Simulation in Proteus opracowano w wersji polskiej na podstawie współpracy z portalem www.theengineeringprojects.com.

1. Praktyczny Kurs Arduino - przewodnik po artykułach składających się na kurs 2. Czym jest Arduino? 3. Porównanie Arduino z Raspberry Pi 4. Instalacja sterownika Arduino w systemie Windows 5. Generowanie pliku hex w Arduino 6. Jak wgrać bootloader w Atmega328? 7. Rozpoczęcie pracy z oprogramowaniem Arduino 8. Rozpoczęcie programowania w Arduino 9. Programowe resetowanie Arduino 10. Wprowadzenie do Arduino UNO 11. Wprowadzenie do Arduino NANO 12. Wprowadzenie do Arduino Pro Mini 13. Wprowadzenie do Arduino Mega 2560 14. Wprowadzenie do Arduino Due 15. Wprowadzenie do Arduino Lilypad 16. Wprowadzenie do ATmega328 17. Biblioteka Arduino dla Proteusa 18. Projekt płytki drukowanej Arduino UNO dla Proteus ARES 19. Biblioteka Arduino Lilypad dla Proteusa 20. Odczyt z portu szeregowego Arduino 21. Projektowanie układów LCD z Arduino 22. Łączenie klawiatury z Arduino 23. Wartość ADC na LCD przy użyciu Arduino 24. Symulacja czujnika ultradźwiękowego w Proteusie 25. Połączenie czujnika ultradźwiękowego z Arduino 26. Wiele czujników ultradźwiękowych z Arduino 27. Czujnik temperatury 18B20 z Arduino 28. Jak używać 18B20 w Proteus ISIS? 29. Łączenie LM35 z Arduino w Proteusie 30. Współpraca siedmiosegmentowego wyświetlacza z Arduino w Proteusie 31. Łączenie czujnika PIR z Arduino 32. Współpraca czujnika płomienia z Arduino 33. Interfejs NRF24L01 z Arduino 34. NRF24L01+ i Arduino - Response Timed Out 35. Połączenie RFID RC522 z Arduino 36. Komunikacja Bluetooth z Arduino przy użyciu HC05 37. Sterowanie serwomotorem za pomocą Arduino w Proteusie 38. Projekt sterowania sygnalizacją świetlną przy użyciu Arduino 39. Przewijanie tekstu na matrycy LED 8×8 z użyciem Arduino 40. Inteligentny system oszczędzania energii 41. Komunikacja USB pomiędzy Androidem i Arduino 42. Automatyka domowa z użyciem XBee i Arduino 43. Domowy system bezpieczeństwa oparty na GSM 44. Wysyłanie SMS-ów za pomocą Arduino UNO i SIM900 45. Odbieranie SMS-ów za pomocą komend AT przy użyciu Arduino 46. Projekt rozpoznawania głosu przy użyciu EasyVR Shield 47. Rozpoczęcie pracy z programem EasyVR Commander 48. Połączenie EasyVR z Arduino UNO 49. Błąd szkolenia - niepowodzenie rozpoznawania w EasyVR 50. Połączenie XBee z komputerem 51. Wprowadzenie do modułu XBee 52. Interfejs XBee z Arduino 53. Rozpoczęcie pracy z kamerą Pixy 54. Jak zainstalować oprogramowanie kamery Pixy - PixyMon 55. Aktualizacja firmware kamery Pixy do najnowszej wersji 56. Jak wytrenować kamerę Pixy za pomocą komputera 57. Sterowanie kierunkiem obrotu silnika prądu stałego za pomocą Arduino 58. Sterowanie prędkością obrotów silnika prądu stałego za pomocą Arduino
Rozwiń cały spis treści Zwiń spis treści
Tematyka materiału: Symulator Arduino, czujnik ultradźwiękowy, HC-SR04, Proteus
AUTOR
Źródło
www.theengineeringprojects.com
Udostępnij
POZYCJA: single-article-middle-left
DANE:
Oceń najnowsze wydanie EdW
Wypełnij ankietę i odbierz prezent
UK Logo
Elektronika dla Wszystkich
Zapisując się na nasz newsletter możesz otrzymać GRATIS
najnowsze e-wydanie magazynu "Elektronika dla Wszystkich"