avatar_ewreka

MiniSumo Robot

Başlatan ewreka, 09 Nisan 2016, 22:46:37

ewreka

Merhaba Sayın @ETE hocam ve arkadaşkar.
Yeni bir projem var ve bu proje hakkında sizin yardımlarınızı rica ediyorum.

Yapmak istediğim proje bu http://www.electrobotic.org/sharox/

Sanırım üç kısımda incelenebilir bu proje:
1-Mekanik kısım
2-Elektronik Kısım
3-Yazılım kısmı

İlk önce malzeme listesi çıkarılması lazım zira bu proje 2011'e ait sensörler problem olacak şu an hangi sensörler var piyasa da bilmiyorum.
Ve mekanik kısmını plexiglass tan yapabilirmiyim sanırım o da Karaköy civarlarında bulunuyor.
Sizin fikirlerinize iytiyazım var.

Hürmetler.

ete

Söz konusu sensörler hala güncel olan sensörler ve zaten bu iş için en uygun sensörler.
İşin mekanik kısmı en zor olanı gibi gözüküyor. Gerisi zaten verilmiş sayfada.
Zaman sıkıntın yok ise İnternet de önce mini sumo robotları olarak genel araştırma yapıp fiziksel yapıları konusunda bilgi edinmeye çalış. Sonra kendi sistemini tasarla. Gerekirse burada yeniden akıl sor.
Ben sumo robotları ile uğraşmadım. İşin fiziksel tarafını hiç bilmiyorum desem yeridir. Görünüşe göre 2 tekeri var aletin önden de küreyici destek veriyor olsa gerek. Zira aletin ayakta durabilmesi için en azında 3 noktadan yere temas etmesi gerekir.
Kürek kısmı bir yerlere takılmamalı ama ağırlık olarak arka taraftan biraz ağır olmalı ki robot geriye yatmasın. Bunlara dikkat edersen olur sanırım. Plexi ağır bir malzemedir. Bence ince aluminyum daha uygun olurdu. Zira aracında ağır olmaması gerekir.

Ete

ewreka

#2
Sayın @ETE cevabınız için teşekkür ederim.

Sanırım ilk projeyi plexiglass tan yapacağım, çünkü pratikte sac dan başlarsam sürekli sanayiye gitmekzorunda  kalırım :) bu ilk olduğu için aslında prototip olacak, malzeme  listesini çıkaralım mı?

1-pic 16f628a,                3 Adet              mcu
2-cny70,                         4 adet              dohyo dışına çıkmaması için
3-SHARP GP2Y0D02,       3 adet              rakip algılama sensörü
4-L293D,                        4 adet              motor sürücü entegresi
5-buzzer                        2 adet               buzzer ne yapıyor  bilmiyorum ?
6-7805                           5 adet              5V sabit güç regülatörü
7-100nf  cap                  5 adet               sabit güç regülatörü için
8-470uf cap                   5 adet               sabit güç regülatörü için
9-10nf                           5 adet              sabit güç regülatörü için
10-10uf                         5 adet              sabit güç regülatörü için
11-100R                       10 adet            cny70 için
12-47k                         10 adet            cny70 için
13-tekerlek                    2 adet               motor için
14-motor                        2 adet              SANYO redüktörlü DC motor almayı planlıyorum.
15-a4 büyüklüğünde plexiglass
16-11,1V Lipo Batarya 850mAh 25C

eksik başka bir şey var mı?

Teşekkürler ,Hürmetler.   

ewreka

#3
Merhaba Sayın dostlar.
isis projesini hazırladım ama  bazı broblemler var isis bu şekilde.

kod şu şekilde:

'****************************************************************
'*  Name    : main2.BAS                                         *
'*  Author  : EWREKA                                            *
'*  Notice  : Copyright (c) 2016                                *
'*          : All Rights Reserved                               *
'*  Date    : 12.04.2016                                        *
'*  Version : 0.5                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************
'*************************************************************************************
@ __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_ON & _PWRTE_ON & _MCLRE_OFF & _LVP_OFF & _CP_OFF
'*************************************************************************************
DEFINE OSC 4

CMCON = 7

INCLUDE "modedefs.bas"              ;BU YÖNTEM ILE SHARP ALGILAYICISINI OKUYACAGIZ 

SYMBOL SAGILERI = PORTB.0           ;MOTORLARI TANIMLADIK
SYMBOL SAGGERI = PORTB.1
SYMBOL SOLGERI = PORTB.2
SYMBOL SOLILERI = PORTB.3
SYMBOL CNYSAG = PORTB.4             ;SIYAH-BEYAZ ALGILAYICILARI TANIMLADIK
SYMBOL CNYSOL = PORTB.5
SYMBOL YESIL = PORTA.0

SAAT VAR PORTB.6                    ;UZAKLIK ALGILAYICININ BACAKLARINA ISIM VERDIK
BILGI VAR PORTB.7
TRISB = %10110000                   ;GIRIS VE CIKISLARI AYARLADIK
MES CON 80
UZAKLIK VAR BYTE
UZAKLIK1 VAR BYTE
DONUS VAR BIT
KONTROL VAR WORD
BULDU VAR BIT
BIRIM VAR BYTE
N VAR BYTE
;********************************* ANA DONGU ***********************************

GOSUB DUR                            ;YARISMA KURALINA GÖRE EN BASTA BEKLENMESI GEREKEN
PAUSE 5000                           ; 5 SANIYELIK SÜRE
GOSUB SAATYONU                       ;SAATYONUNDE DÖNEREK YARISA BASLAMA
PAUSE 10
ANA:
GOSUB OKU
GOSUB DEGERLENDIR
GOTO ANA
DEGERLENDIR:
IF UZAKLIK >= MES THEN               ;UZAKLIK DEGERI BELIRLI BIR SAYIDAN BUYUKSE
CALL DUZGIT                          ;RAKIP ROBOTUN YAKIN OLDUGU ANLASILIR
PAUSE 1                              ;VE ROBOT HEMEN DUZ GITMEYE BASLAR
ENDIF
RETURN
;**************************** TEKER HAREKETI ***********************************

DUZGIT:
HIGH SAGILERI
HIGH SOLILERI
LOW SAGGERI
LOW SOLGERI
RETURN
SAATYONU:
HIGH SAGGERI
LOW SAGILERI
HIGH SOLILERI
LOW SOLGERI
RETURN
TERSI:
HIGH SAGILERI
LOW SAGGERI
HIGH SOLGERI

LOW SOLILERI
RETURN
GERIGIT:
LOW SAGILERI
LOW SOLILERI
HIGH SAGGERI
HIGH SOLGERI
RETURN
DUR:
LOW SAGILERI
LOW SOLILERI
LOW SAGGERI
LOW SOLGERI
RETURN
;--------------------------SHARP OKUMA RUTINI-----------------------------------

OKU:
LOW SAAT
;SAATI (CLOCK) KAPATARAK BILGI GELMESINI BEKLER
WHILE BILGI=0
;BILGI GELENE KADAR BEKLER
WEND
SHIFTIN BILGI, SAAT, MSBPOST, [UZAKLIK]
;UZAKLIK BILGISINI SHIFTIN KOMUTU
HIGH YESIL
;ARACILIGIYLA MSBPOST YÖNTEMI ILE
PAUSE 5
;ALIP UZAKLIK DEGISKENINE ATAR
;ARDINDAN BILGI ALIS VERISINI
RETURN
;KAPATIR


Sanırım isis şemasında bir problem var arkadaşlar.
kodla isis şemasını uygulayabilmişmiyim eksikler neler?

Teşekkürler, hürmetler.

ewreka

Merhabalar benim bir sorum daha olacak size;
yukarıda yazdığım üzere sharp sensör alacaktım fakat mz80 hem daha ucuz hem de tepkime süresi daha kısa
sharp tepkime süresi : 5ms
mz80 tepkime süresi : 2ms
Fakat mz80 nin pbp da yazılmış  bir örnek kodunu bulamadım  :( bugün yarın  siparişi vereceğim.

kod yukardaki gibi sharp uyumlu mz80'e nasıl çevirebilirim.Tek sensör kullanacağım.
mz80  de clock çıkışıyok kafam çok karıştı  :S

Hürmetler.

ewreka

Arkadaşlar bir  kod buldum ama mz80 için çalışır mı bilmiyorum.

sharp sensörü için çalışmıyor isis simulasyonda bir bakarmısınız?:


' -----[ultrasonic  sabitler ]-------------------------------------------------------
Trigger         CON     5                ' trigger pulse = 10 uS
Scale           CON     $200             ' raw x 2.00 = uS
RawToIn         CON     889              ' 1 / 73.746 (with **)
RawToCm         CON     2257             ' 1 / 29.034 (with **)
IsHigh          CON     1                ' for PULSOUT
IsLow           CON     0
ULTRA_SONAR     VAR     PORTA.1

rawDist        VAR     Word
inches         VAR     Word
cm             VAR     Word

TRISA = 1
TRISB = 0
PORTB = 0
LOW ULTRA_SONAR
main:

GOSUB GET_SONAR
                            ' get sensor value
inches = rawDist ** RawToIn                 ' inch'e dönü?tür
cm = rawDist ** RawToCm
                                            ' cm'ye dönü?tür   
DO
    IF (cm > 40) THEN GOTO LED1YANSIN
    IF (cm < 75) AND (CM > 40)  THEN  GOTO LED2YANSIN       
    IF (cm < 40) THEN GOTO LED3YANSIN                 
LOOP
                                                     
GET_SONAR:                                  ' make trigger 0-1-0
    ULTRA_SONAR = IsLow
    PULSOUT ULTRA_SONAR, Trigger            ' sensörü aktifle
    PULSIN  ULTRA_SONAR, IsHigh, rawDist    ' measure echo pulse
    rawDist = rawDist */ Scale              'convert to uS
    rawDist = rawDist / 2
RETURN 

LED1YANSIN:
    PORTB = 0
    HIGH PORTB.0
GOTO main   

LED2YANSIN:
    PORTB = 0
    HIGH PORTB.1
GOTO main

LED3YANSIN:
    PORTB = 0
    HIGH PORTB.2
GOTO main               
END

Powered by EzPortal