The beauty of Assembly language
seen from China
seen from United Kingdom
seen from Germany

seen from United States
seen from Switzerland
seen from United States

seen from South Africa

seen from United States
seen from China
seen from Russia
seen from United States

seen from Switzerland
seen from Hong Kong SAR China
seen from South Africa

seen from United States

seen from Australia

seen from Malaysia
seen from Hong Kong SAR China

seen from Türkiye

seen from United States
The beauty of Assembly language

Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
Free to watch • No registration required • HD streaming
TCS230 based Bluetooth color picker
This is TCS230 based Bluetooth color picker prototype which we build to test the concept. In here the idea is to extract color from any physical object and transfer it to PC / mobile. To test this concept, we use low-cost TCS230 color sensor.
TCS230 is programmable color light-to-frequency convert IC. This chip produces square wave output with frequency directly proportional to the light intensity. To drive this sensor and capture its output we used PIC16F628A microcontroller. The processed output is then transferred to the host using the HC-05 Bluetooth SPP (Serial Port Protocol) module. In PC we wrote small Python script to display captured value and color in a Window. In this design, we drive the TCS230 sensor with 20% frequency scaling. The entire circuit is built using commonly available modules and components. For the color sensor, we use the 8-pin TCS230 sensor module which is commonly found in eBay and other online electronic component stores. This module comes with 4 white LEDs and because of that, we don’t need a separate circuit for LEDs. At the testing stages, we find out that the TCS230 sensor is not as accurate as we thought. It identifies colors but its results are not accurate enough to meet with our original project requirements. We got a quite satisfactory result when we attached a CCTV camera (filter) lens to this sensor but still, it is not accurate enough for our application.
The firmware, schematic and Python monitoring script of this project are available at https://github.com/dilshan/tcs230-color-picker. To build PIC16F628A firmware use MPLAB IDE with XC8 C compiler.
"Musical trees" is a part of creative arts installation and this project is capable to produce different audio tones by detecting human touch to its attached plants. Existing version of this driver is capable to monitor 8 plants and produce different sounds for each plant.
This project is build around PIC16F628A 8-bit microcontroller and PT2399 echo processor IC. To drive the sensor electrodes we use pair of CD4011 quad 2-input NAND gate ICs. This prototype use TDA7052 1W audio amplifier IC to drive the speaker(s).
The existing firmware of PIC16F628A is designed to produce tones in between 155Hz to 1244Hz and this range can be change by modifying the supplied firmware source code. In this design PT2399 echo processor IC is used to get more natural (/ deep) sound effect by adding some reverberation to the output.
Schematic and firmware of this project is available to download at elect.wikispaces.com.
Optically controlled servo motor
This is demonstration project to control servo motor movement using physical marker and normal video camera. In this project video camera capture the movements of marker and calculate rotation angle based on that. This calculated rotation angle is feed to the servo through small MCU based interfacing unit.
In this project video processing and tracking is performed using ARToolkit and controlling of servo is carried out using PIC16F628A microcontroller. RS232 interface is use to communicate between PC and microcontroller.
This application detects movement of marker on Z axis (yaw) and transforms it into another numerical scale to manipulate the servo motor. Processing application is written using Visual C++ and configured to work on Windows operating system(s). The marker used for this application is needed to be a "square with some symbol" and user can train this system for any compatible marker. As per our tests, standard 3-mega pixel or higher grade web cam is sufficient for this system.
To demonstrate the exact behavior video is much more suitable but my web cam is used for this project and I don’t have spare web cam to capture the operation of this project. As per our observations servo movement is highly sensitive to the changes of marker object and the movement of the servo motor is also linear and smooth. The propagation time is little bit slowly due to serial interface and this can be improved by using high speed I/O interface like USB port.
The source code, servo driver schematic and firmware of this project are available to download at elect.wikispaces.com.
Replacement Code Lock for LS7220 base Systems
LSI Computer System's LS7220 is a digital code lock system for automotive systems. This LS7220 integrated circuit is difficult to find in many places and because of that we design some alternative system which simulate the functionally of LS7220 code lock system. This simulated system executes on top of the PIC16F628A 8bit MCU and it release as an open hardware project. LS7220 is a "hard-wired" code-locking system, but this simulated system provides both "hard-wired" and customizable (re-programmable) code locking options. This re-programmable feature provides some higher degree of protection to the system and it allows user/administrator to change system’s code at any given time by without changing the wiring layout(s) of the system.
In this project PIC16F628A MCU use its internal 4MHz oscillator and because of that it doesn't require any external clocking source(s). This system is design to work with 5V DC power supply and its output is interface with 5V - 12V relay to drive the locking mechanism(s). Compared with the LS7220 the only drawback of this system is its limited supply voltage. LS7220 have some wide supply voltage range like 5V - 18V DC. But still you can also couple this virtual system to that supply voltage by using some voltage regulation ICs like LM7805, LM317, etc. The firmware of this system is written using Hi-Tech C and it is design with minimum external component dependencies. Because of that user can use "programmed MCU" with his/her own circuit design / customizations. The main purpose of this project is to create some alternative design for LS7220 base code locking systems. Please note that this is not a project to degrade the features/specifications of LSI-CSI's LS7220 (or related) products. The complete project content including source codes and sample schematics are available to download at elect.wikispaces.com. All the content of this project are release under the terms of GNU GPL Version 3.0 license.

Anya is live and ready to show you everything. Watch her strip, dance, and perform exclusive shows just for you. Interact in real-time and make your fantasies come true.
Free to watch • No registration required • HD streaming
ÇİZGİ İZLEYEN ROBOT YAPIMI 1
Tanımı ve Çalışma Prensibi
Çizgi izleyen robot, adından da anlaşıldığı üzere, renk farkından
faydalanarak bir çizgiyi takip eden robot çeşididir. Bu robot, endüstriyel
alanlarda çok faydalı olabilecek bir robottur. Eğer sürekli bir yerden diğer bir
yere mal götürülüyorsa, bu işi otonom olarak bir robota yaptırmak hem işleri
hızlandıracak hem de ihtiyaç duyulan iş gücünü azaltacaktır. Bu sistemi
kurabilmek için ise yapılması gereken tek şey robotun gitmesi gereken
güzergâha bir çizgi çizmek.
Bu robotların çalışma prensibi aşağıdaki diyagramla açıklanabilir:
Bu projede kullanacağımız optik sensörler kızılötesi(ir) ışık yayarlar ve
tekrar yansıyan ışığı detektörleri aracılığıyla toplar ve topladıkları bu ışığın
şiddetine göre belli voltaj düzeylerinde çıkış verirler. Daha iyi sonuçlar
alabilmek için çizginin rengi ışığı en üst seviyede yansıtan beyaz veya en düşük
seviyede yansıtan siyah olmaktadır. Zeminin de, daha iyi sonuç vermesi
açısından, çizgi siyahsa beyaz, çizgi beyazsa siyah olması tercih edilir.
Sensörlerden gelen çıkışlar analog olduğu için, bu çıkışları karar verme
mekanizmamızın(mikroişlemci) anlayabileceği dile, lojik 1 ve 0 laradönüştürmemiz gerekmektedir. Bu dönüştürme işlemini de karşılaştırıcı olarak
kullandığımız opamplar(işlemsel kuvvetlendirici) yapmaktadır. Opamplar şu
şekilde çalışmaktadır: Opampa bir referans gerilimi veriyoruz ve opamp bu
referans gerilimiyle sensörlerden gelen gerilimi karşılaştırıp 5 V (lojik1) veya 0
V (lojik 0) çıkış vermektedir. Bu çıkış gerilimi, kullandığımız devreye ve
sensörlerden gelen gerilime göre değişmektedir. Bizim kullanacağımız devrede
sensörlerden referans geriliminin altında bir gerilim geldiğinde opamp 5 V
(lojik1), üstünde bir gerilim geldiğinde de 0 V (lojik 0) çıkışı vermektedir. Yani
sensörlerimiz siyah rengi gördüklerinde opamp 0 V, beyaz rengi gördüklerinde
de 5 V çıkış vermektedir. Sensörlerden gelen bu verilere göre de mikroişlemci
bir karar vermekte ve bu karara göre de motorları harekete geçirmektedir.
Mikroişlemcinin kararı şu şekilde olabilir:
Bu üç durum bir çizgi izleyen robotun çizgi üzerinde gitmesi için yeterlidir. Bu
3 sensörlü bir sistem için geçerlidir. Sensör sayısı artırılarak ve farklı
konfigürasyonlar kullanarak belki daha iyi sonuçlar alınabilir. Ancak şunu
unutmamak lazım ki daha fazla sensör, daha fazla durum bu da daha uzun bir
program demektir. Programın uzun olması, sistemin farklı durumlar karşısında
göstereceği tepki süresinin daha uzun olmasına sebep olur ki bu da fazla sensör
kullanmanın kötü yanıdır. Burada sistemin vereceği tepki süresi robotun çizgiye
sağlayacağı uyum açısından önemli olduğu için gerekmediği sürece fazla sensör
kullanmanın uygun olmayacağını söyleyebilirim. Ayrıca sensörlerin formasyonu
ve aralarındaki uzaklık direk olarak aracın performansını etkileyeceği için bu da
bir diğer önemli noktadır. Bu uzaklık ve sensörlerin dağılım biçimi aracın
hızına, genişliğine, uzunluğuna ve sistemin vereceği tepki süresine göre
değiştiği için en uygun değerleri bulmak için ya bütün bu etkenler göz önünde
bulundurularak meşakkatli bir hesaplama yapılmalı ya da deneme yanılma
yöntemi kullanılmalıdır.
Mekanik Kısım
Aracın mekanik kısmı da diğer kısımlar gibi robotun performansı üzerinde doğrudan bir etkiye sahiptir. Bu sebeple mekanik tasarım da önemlidir. Robotun kasası için birkaç farklı tasarımkullanılabilir. Bunlardan biri hazır bir oyuncak araba alınıp onun kasası bu iş için kullanılabilir.Bu oyuncak arabalar, otomobillerde olduğu gibi, ackerman steering denilen sürüş sistemine sahiptir. Bu sürüş sisteminde aracın hareketi arka tekerleklere bağlı olan bir motorla sağlanırken, yönlendirilmesi için de ön tekerleklere bağlı bir adet motor kullanılmaktadır. Bu sürüş sisteminde aracın manevra yeteneği düşük olacağından keskin virajları dönemeyecektir.
Bir diğer sistem de önde bir adet sarhoş tekerin kullanıldığı ve arka tarafta da birbirinden bağımsız hareket eden iki teker ve bunlara bağlı motorlardan oluşan sistemdir. Bu sistemde araç dönüşünü iki tekerin hız farkından faydalanarak yapmaktadır bu sürüş sistemine de diferansiyel sürüş denir. Araç daha yavaş dönen teker tarafına doğru yönlenecek ve tekerlekler arasındaki hız farkı arttıkça da aracın manevrası daha da keskinleşecektir. Resimde görülen robotta motorlar tekerleklere direk bağlandığı için motorlar yüksek akım çekecektir bunun için de yüksek akımlı pillere ihtiyaç vardır.
Dişli kutulu motorlar kullanılarak aracın çektiği akımı düşürmek mümkündür. Tabi bu motorlar diğer motorlara göre daha pahalı olduğundan bu şekilde robotun maliyeti de artmaktadır. Eğer böyle bir mekanik aksamı kendiniz yaparak uğraşmak istemiyorsanız, hazır bir oyuncak araba alıp devrelerinizi onun üzerine kurmalısınız.
Şekilde bizim yapmış olduğumuz çizgi izleyen robot görülmektedir. Bu robot sürüş sistemi olarak iki adet dişli kutulu dc motor, bunlara bağlı 2 teker ve önde bir adet sarhoş tekerden oluşmaktadır. Gövde ise dayanıklı ve hafif olan plexiglass maddesinden yapılmıştır. Batarya olarak da 12 V asit batarya kullanılmıştır. Bu batarya ağırdır ve çabuk deşarj olmaktadır, kullanılma sebebi ise ucuz olmasıdır.
Elektronik Kısım
Robot İçin Gerekli Malzemeler
Kontrol devresi için:
• 1 adet PIC16F628A(mikrodenetleyici)
• 1 adet L293D(motor sürüş entegresi)
• 1 adet 74HC14(schmitt trigger)
• 2 adet 18’lik dip soket(PIC16F628A için)
• 1 adet 16’lık dip soket(L293D için)
• 1 adet 14’lük dip soket(74HC14 için)
• 1 adet 4 MHz kristal
• 2 adet 22 pF seramik kondansatör
• 1 adet 100 nF seramik kondansatör
• 1 adet 10 kΩ direnç
• 4 adet 2’li klemens
Voltaj regülatörü devresi için:
• 1 adet 7805(voltaj regülatörü)
• 1 adet 330 µF kondansatör• 1 adet 10 µF kondansatör
• 1 adet 0.1 µF kondansatör
• 1 adet 1N4001(diyot)
• 2 adet 2’li klemens
Sensör devresi için:
• 3 adet CNY70(sensör)
• 3 adet 100 Ω direnç
• 3 adet 47 k Ω direnç
Diğer malzemeler:
• Yeteri kadar kablo(devreleri birbirine bağlamak için)
• 9–12 volt veya 4,8 volt batarya1
Mekanik aksam için:
• Araç için uygun bir kasa
• 2 adet dişli kutulu DC motor
• 2 adet teker
• Motorları tekerleklere ve kasaya monte edebilmek için uygun
aksamlar(hub, L ayak vb)
• 1 adet sarhoş teker
Devamı "çizgi izleyen robot yapımı 2" yazısında açıklanacaktır.