Long ago during holidays I've made a light following robot. Very often people build these robots without using any microcontrollers or specified integrated circuits. And that's why I went for a little twist and I actually decided to build one with atmega88. It allowed me to not only ensure the basic functionality of the robot, but also I was able to add a new one - barrier detection. Which is pretty useful, when for example robot's path is obscured by some kind of object (thanks to the IR sensors robot will detect the obstacle and stop). Anyways the construction is so simple because I used undercarriage from my car. You can watch how robot works below:
Tuesday, December 10, 2013
Light following robot
Hi.
Long ago during holidays I've made a light following robot. Very often people build these robots without using any microcontrollers or specified integrated circuits. And that's why I went for a little twist and I actually decided to build one with atmega88. It allowed me to not only ensure the basic functionality of the robot, but also I was able to add a new one - barrier detection. Which is pretty useful, when for example robot's path is obscured by some kind of object (thanks to the IR sensors robot will detect the obstacle and stop). Anyways the construction is so simple because I used undercarriage from my car. You can watch how robot works below:
Long ago during holidays I've made a light following robot. Very often people build these robots without using any microcontrollers or specified integrated circuits. And that's why I went for a little twist and I actually decided to build one with atmega88. It allowed me to not only ensure the basic functionality of the robot, but also I was able to add a new one - barrier detection. Which is pretty useful, when for example robot's path is obscured by some kind of object (thanks to the IR sensors robot will detect the obstacle and stop). Anyways the construction is so simple because I used undercarriage from my car. You can watch how robot works below:
Saturday, December 7, 2013
Oscilloscope with new feature
Hello.
It'll be a short note. I've recently had some free time and so I was able to add a new feature to my oscilloscope. And it is quite useful one - synchronization with measured signal. You can choose the activation method as well (falling / rising edge). I've also tweaked the display management a bit. It now utilizes frame-buffering, which improves FPS significantly. Here is a video with the new version of the oscilloscope:
It'll be a short note. I've recently had some free time and so I was able to add a new feature to my oscilloscope. And it is quite useful one - synchronization with measured signal. You can choose the activation method as well (falling / rising edge). I've also tweaked the display management a bit. It now utilizes frame-buffering, which improves FPS significantly. Here is a video with the new version of the oscilloscope:
Monday, November 25, 2013
LPC2138 ARM Oscilloscope and generator
Hello.
I'd like to show you my new project. I've never had a generator and an oscilloscope so I decided to make these. I started making oscilloscope on Atmega32, but later I bought LPC2138 and it has DAC so I decided to change uC to LPC.
Generator
Few words about generator. Generator can generate sine wave, square wave and triangle wave. You can adjust duty cycle in range 1-99%. Amplitude of generating signal is 3.3V. I used an internal DAC to make this generator.
Oscilloscope
I used an internal ADC to make oscilloscope. It has these features:
LCD
I used LCD with a driver KS0108.
How to use these
I used 5 keys to choose option and input data for generator you can enter value through for example terminal Putty.
Code
I wrote it in C.
Video
On video I show you 3 different waves and measurement voltage of transformer. You can also watch earlier version of oscilloscope on Atmega at my YouTube channel.
Summary
This is simple oscilloscope with generator but what it's important it works. At main screen you can see a clock with thermometer as RTC: PCF8583, thermometer: DS18B20 and EEPROM: ATMEL24C256 to storage a configuration.
You are welcome to post your opinions of my project.
I'd like to show you my new project. I've never had a generator and an oscilloscope so I decided to make these. I started making oscilloscope on Atmega32, but later I bought LPC2138 and it has DAC so I decided to change uC to LPC.
Generator
Few words about generator. Generator can generate sine wave, square wave and triangle wave. You can adjust duty cycle in range 1-99%. Amplitude of generating signal is 3.3V. I used an internal DAC to make this generator.
Oscilloscope
I used an internal ADC to make oscilloscope. It has these features:
- time/div: 50us/div-500ms/div
- voltage/div: 1V/div-50V/div
- detection signal DC/AC
- calculate frequency and duty cycle
- calculate voltage
LCD
I used LCD with a driver KS0108.
How to use these
I used 5 keys to choose option and input data for generator you can enter value through for example terminal Putty.
Code
I wrote it in C.
Video
On video I show you 3 different waves and measurement voltage of transformer. You can also watch earlier version of oscilloscope on Atmega at my YouTube channel.
Summary
This is simple oscilloscope with generator but what it's important it works. At main screen you can see a clock with thermometer as RTC: PCF8583, thermometer: DS18B20 and EEPROM: ATMEL24C256 to storage a configuration.
You are welcome to post your opinions of my project.
Sunday, November 24, 2013
Generator i oscyloskop na LPC2138
Witam.
Chciałbym przedstawić mój nowy
projekt generator i oscyloskop. Z racji tego, że nie posiadam ani
oscyloskopu ani generatora, postawiłem zrobić te dwa urządzenia,
początkowo miałem to zrobić na Atmedze 32, ale z racji, że
ostatnio zacząłem przygodę z ARM, a w wykorzystanym ARM jest
przetwornik cyfrowo analogowy, dzięki któremu mogłem w prosty
sposób zrobić generator, wybór właśnie padł na ARM. Konstrukcja
przede wszystkim opiera się na zestawie uruchomieniowym ZL9ARM z
wykorzystaniem mikrokontrolera LPC2138.
Generator
Teraz kilka słów na temat generatora.
Generator potrafi generować przebiegi sinusoidalne, prostokątne i
trójkątne, z możliwością regulacji współczynnika wypełnienia
w zakresie 1-99%. Zakres generowanych częstotliwości wynosi od 1 Hz
do 100 kHz. Na wyjściu generatora mamy przebieg o amplitudzie 3.3V.
Do zrobienia generatora użyłem oczywiście wewnętrznego
przetwornika cyfrowo analogowego.
Oscyloskop
Oscyloskop powstał przy użyciu
wewnętrznego przetwornika analogowo cyfrowego, posiada takie
właściwości jak:
-podstawę czasu od 50us/dz do 500ms/dz
-podziałka napięcia od 1V/dz do
50V/dz
-detekcja sygnału DC/AC
-obliczanie częstotliwości i
współczynnika wypełnienia
-wyświetlanie napięcia
Wszystkie obliczenia dotyczące sygnału
wejściowego są tylko na podstawie wartości z przetwornika ADC,
dlatego pomiar częstotliwości jak i współczynnika nie zawsze jest
dokładny. Oscyloskop na podstawie wyników z przetwornika ADC robi
detekcję sygnału i w przypadku sygnału AC obliczana jest
częstotliwość i współczynnik wypełnienia, oraz wyliczana
maksymalna wartość napięcia. Natomiast w przypadku przebiegu DC
wyliczana średnia wartość napięcia. Tor wejściowy oscyloskopu to
zwykły dzielnik napięcia, od którego zależy przede wszystkim
zakres napięć wejściowych, należy również pamiętać, że im
większy zakres tym gorsza dokładność pomiaru napięcia. Przy
obecnych wartościach rezystorów zakres napięć wejściowych wynosi
do około ±30V.
Wyświetlacz
Do wyświetlania użyłem wyświetlacza
LCD ze sterownikiem KS0108.
Sterowanie
Sterowanie zarówno oscyloskopu jak i
generatora odbywa się przy użyciu 5 klawiszy, które są w zestawie
uruchomieniowym, natomiast wprowadzanie danych dla generatora odbywa
się przez RS232 z wykorzystaniem terminala.
Oprogramowanie
Całość została napisana w języku
C.
Film
Na filmie pokazane są 3 różne
przebiegi, jak i pomiar napięcia z transformatora. Na moim kanale
youtube można zobaczyć wcześniejsze próby na Atmedze 32. Na
filmie można zauważyć, że oprócz generatora i oscyloskopu są
jeszcze inne funkcje jak wyświetlanie czasu, daty, temperatury, ale
to taki dodatek do całości, który nie odnosi się do głównej
funkcjonalności.
Podsumowanie
Reasumując do projektu użyłem
zestawu uruchomieniowego, wyświetlacz LCD ze sterownikiem KS0108,
paru rezystorów służących jako dzielnik napięcia do toru
wejściowego oscyloskopu. Do pozostałej funkcjonalności którą
można zobaczyć na głównym ekranie użyłem jako RTC: PCF8583,
termometr DS18B20 i pamięć EEPROM ATMEL24C256 służącą do
przechowania konfiguracji.
Oczywiście jest to dość prosta konstrukcja, ale do moich prostych zastosowań jest wystarczająca :)
Uwagi, propozycje i opinie są mile
widziane.
Hello / Cześć
Hello everyone.
What will I write? Blog will be about programming, security, electronics.
Enjoy reading and I encourage to comment my posts.
Witam.
Tematyka bloga będzie o programowaniu, trochę o bezpieczeństwie i elektronice.
Miłego czytania kolejnych wpisów i zapraszam do komentowania wpisów.
What will I write? Blog will be about programming, security, electronics.
Enjoy reading and I encourage to comment my posts.
Witam.
Tematyka bloga będzie o programowaniu, trochę o bezpieczeństwie i elektronice.
Miłego czytania kolejnych wpisów i zapraszam do komentowania wpisów.
Subscribe to:
Posts (Atom)