XuLA
reede, 10. mai 2013
Tagasiside
Kuna valmis sai siiski tehtud terve komplekt koos näidisülesannetega, testisime seda ka üliõpilaste peal :) Kasu sellest oli kõvasti - juhendid said täiendust, mõned veadki tulid välja. Nüüd veel vaja test programme kõpitseda.
neljapäev, 4. aprill 2013
Voolutarve
Laboris voolutarbimise mõõtmised. Uus komplekt võtab umbes 100mA rohkem voolu, sellest pool läheb BT arvele ja teine pool XuLA arvele.
Järeldused teeme hiljem ...
P.S. Hilisemad kordusmõõtmised näitasid suuremat vahet, ning põhitarbija on ikkagi FPGA.
Järeldused teeme hiljem ...
P.S. Hilisemad kordusmõõtmised näitasid suuremat vahet, ning põhitarbija on ikkagi FPGA.
kolmapäev, 3. aprill 2013
BotCommanderBT
Pärast pikka vaidlust iseendaga tehtud suur muudatus - järjestikliidese asemel suhtlus otse üle BT stacki. Plusspool - jääb ära BT paaritamine ja virtuaalsete järjestikliidestega majandamine. Teegiks valitud BlueCove. Toimib windows, macos ja linux keskonnas. Testitud :)
BotCommander ümber kirjutatud, uus nimi BotCommanderBT, lisatud eraldi klass BT adapteri seadistamiseks. Kood lihtsamaks tehtud, loobutud sisemisest editorist.
P.S. BT adapteri adekvaatne manuaal - ARF-BTC1-2_Modules_Users Guide_V0.90.pdf
P.P.S. Suse peal (arvutiklassis) peab juurde installima paketi bluez-devel - BlueCove Linux module
P.P.P.S. Debian vajab pakki libbluetooth-dev
BotCommander ümber kirjutatud, uus nimi BotCommanderBT, lisatud eraldi klass BT adapteri seadistamiseks. Kood lihtsamaks tehtud, loobutud sisemisest editorist.
P.S. BT adapteri adekvaatne manuaal - ARF-BTC1-2_Modules_Users Guide_V0.90.pdf
P.P.S. Suse peal (arvutiklassis) peab juurde installima paketi bluez-devel - BlueCove Linux module
P.P.P.S. Debian vajab pakki libbluetooth-dev
kolmapäev, 27. märts 2013
Demo - märts
26. märts - tehtu demo.
Ideed edasiseks ...
Bluetooth adapter
Ideed edasiseks ...
Bluetooth adapter
- Paaritamise probleemid - siduda kindla donglega - mingi lihtne kontroll
- Kirjutada eraldi korralik õpetus BT esmaseks häälestamiseks / konfimiseks
Kasutajaliides
- Kontrollida toimimist Linux'i all (serial device probleemid)
- Võimalus tekitada Makefile (export Makefile)
- Tekitada korralikult pakendus, mida saaks allalaadimiseks üles panna
3.3V vs 5.0V
- Panna kõik andurid enable reziimi s.t. toide XuLA väljundist, testida (andurite komplekt on ette antud)
- Lahti saada 3.3V pingemuundurist
reede, 22. märts 2013
Kokku pandud
Lõpuks on asi reaalselt kokku pandud ja ka ära testitud :)
Plaadi möötmeteks on 53mm X 53mm - bot'i gabariidid ei suurenenud.
Lisatud uued funktsioonid kasutajale.
Algne Bot
Uue ajuga Bot
Plaadi möötmeteks on 53mm X 53mm - bot'i gabariidid ei suurenenud.
Lisatud uued funktsioonid kasutajale.
| uus funktsioon | basic analoog | kommentaar |
|---|---|---|
| set_dir | DIRx | |
| set_bit | OUTx | |
| get_bit | INx | |
| pause | PAUSE | ajaühik 10 uS |
| time | PULSIN | ajaühik 10 uS |
| freq | FREQOUT | kestvusühik 10 uS, sagedusühik 1 Hz |
| auto_load | olenevalt sisendist paneb autoload biti 1 või 0 või väljastab väärtuse hetkel |
esmaspäev, 18. veebruar 2013
Servomootor ja teised
Esimene katse näitas, et servod töötavad ka 3.3V impulsiga. CRServo-v2.2.pdf - min juhtpinge - 3.3V ja min mootori pinge 4V.
Väike pildike ka signaalist
Tarkvaraline signaali genereerimine ei sobinud, kasutusele tuli Timer - xps_timer.pdf
QTI sensor - toimib ka 3.3 V pealt. Manuaal - qtilinesensorrev1.pdf
Fotodiood (mark teadmata :P) - läbi häda töötab 3.3V peal, läbi häda ...
Väike pildike ka signaalist
Tarkvaraline signaali genereerimine ei sobinud, kasutusele tuli Timer - xps_timer.pdf
QTI sensor - toimib ka 3.3 V pealt. Manuaal - qtilinesensorrev1.pdf
Fotodiood (mark teadmata :P) - läbi häda töötab 3.3V peal, läbi häda ...
reede, 15. veebruar 2013
SDRAM
Tundub, et selle SDRAM kasutuselevõtuga pole XuLA puhul veel keegi tegelenud :( Selline vastus siis listist - http://tech.groups.yahoo.com/group/xsboard-users/message/4043
>> Does anyone have a working example where Microblaze is connected with SDRAM ?
I haven't done this yet, nor seen anyone else do it.
--
Dave Vandenbout / XESS Corp.
>> Does anyone have a working example where Microblaze is connected with SDRAM ?
I haven't done this yet, nor seen anyone else do it.
--
Dave Vandenbout / XESS Corp.
kolmapäev, 13. veebruar 2013
Demo - veebruar
11. veebruar - tehtud tööde demo - testkomplekt montaaziplaadil ja BotCommander
Ülesande püstitus ei muutunud :)
Edasised tööd
Ülesande püstitus ei muutunud :)
Edasised tööd
- kaks erinevat reset'i
- hardware reset - flashist loetakse kogu bitstream uuesti, bootloader jääb kasutaja koodi ootele
- protsessor reset - mb reseti puhul kontrollida, kas kasutaja kood juba olemas mälus, kui jah siis jätkab koheselt kasutaja koodi täitmist, vastasel juhul jääb koodi ootele. lahendus - bootloader paneb lipukese püsti BRAM'i
- eraldi valgusdiood, mis näitab, kas kasutaja kood on mälus või mitte
- alustada prototüübi kokkupanemist, bluetooth adapteriks valitud Adeunis ARF7678AA
- BASIC käsud üle vaadata - FREQOUT, PULSOUT, PAUSE jne. implementeerimine, kas siis funktsioonid või lahendada riistvaras
- olemasolevad näidisülesannetele teha C vaste - http://petski.tainas.ee/?page_id=228
- toide ... 5V versus 3.3V - kas on vaja asenda plaadipealne pingeregulaator ? servo ja andurite toimimine ?
- kompileerimine - kontrollid kas kasutaja programm saab kasutada bootloaderi heap'i
- mälu - kui sdram kasutada ei saa siis teha bootloaderile ja kasutaja programmile ühine mäluruum ja anda kasutaja programmile maksimaalne osa, lscript.ld abil piiramine
- teha võrdlus BASIC Stamp'i ja prototüübi voolutarbe kohta
- BotCommander pakendada ühte .jar'i - kompilaator kaasa vöi ikkagi Xilinx ISE eeldus ?
esmaspäev, 4. veebruar 2013
BotCommander
Alustatud siis BotCommander'ga. Kirjutatud Java's. Koosneb järgmistest osadest -
- terminal
- editor + kompilaator
- konfigureerimine
Terminal
Järjestikliidesega suhtlemise võimalused Javas- Java Communications API - toetatud platvormid - Solaris, Linux (32-bit)
- RxTx - toetatud platvormid - Windows (32-bit), Linux (32-bit)
- jSSC - toetatud platvormid - Windows, Linux, MacOSX, Solaris - kõikidel platvormidel on toetatud 32/64-bit
Valik oli jSSC.
Terminal võimaldab suhelda nii alglaaduriga kui ka kasutaja programmiga. Koostöös alglaaduriga on võimalik mällu laadida kompileeritud programm ja see käivitada.
Editor
Minimalistlik editor koodi kirjutamiseks, tõeliselt minimalistlik :)Kompilaator
- -nostartfiles option
- startup kood puudub, sisenemispunktiks on otse main funktsioon
- lihtsustatud linker fail
reede, 25. jaanuar 2013
Riistvara
Millest peaks siis koosnema riistvaraline osa
momendil siis püüan tööle saada välist mälu, alla anda veel vara
- protsessor - MicroBlaze, tundub mõistlik lisada sinna ka riistvaraline ujupunktarvutus
- mälu booloaderile - BRAM,16k - peaks vähemaga hakkama saama
- konsool - max kiirus testida
- väline mälu - koht kuhu laadida kasutaja programm - XuLA peal oleva SDRAM ühendamine osutus keerulisemaks kui algus tundus, netist leiab ainult kaeblemist :S Alternatiiv 16k BRAM'i
- sisend-väljund viigud bot'i jaoks
- timer, counter, mootori juhtimine riistvaras, analoog sisendid kasutusele jms. ?
momendil siis püüan tööle saada välist mälu, alla anda veel vara
teisipäev, 8. jaanuar 2013
Eesmärgi täpsustus
vaatenurk pärast vestlust
Mõtlemiseks ...
bootloader
MB alternatiivid ? Suurt mõtet pole, sest aktiivselt neid ei arendata.
Test
Riistvara - MicroBlaze, konsooliks BT
Sinna kirjutasime tarkvara mis võimaldas
Kokkuvõte - tarkvaraline alglaadur on teostatav
- Bot'il asendada BASIC Stamp XuLA'ga
- XuLA peal MicroBlaze
- MicroBlaze programmi laadimine juhtmevabalt - Bluetooth sobib
- Kompileerimiseks ja üleslaadimiseks oma kasutajaliides - kasutajale asi maksimaalselt lihtsaks teha
Mõtlemiseks ...
bootloader
- tarkvaraline - katkestuse koodi muutmine ?
- riistvaraline
MB alternatiivid ? Suurt mõtet pole, sest aktiivselt neid ei arendata.
Test
Riistvara - MicroBlaze, konsooliks BT
Sinna kirjutasime tarkvara mis võimaldas
- mälupesa lugeda
- mälupessa kirjutada
- jätkata programmi tööd suvaliselt aadressilt - jätkamine aadressilt 0 == tarkvaraline reset :)
Kokkuvõte - tarkvaraline alglaadur on teostatav
kolmapäev, 19. detsember 2012
Bot ...
Alusplaadiks on Board of Education USB Rev D ja selle peal pesitseb BS2 Rev J.
Pisike testprogramm BASICus tehtud - kõik funktsioneerib normaalselt
Pisike testprogramm BASICus tehtud - kõik funktsioneerib normaalselt
kolmapäev, 12. detsember 2012
Juhtmevabalt
Robotit peab olema võimalik programmeerida juhtmevabalt mis tahes tehnoloogiat kasutades. Esialgne ülesanne oleks siis uurida turul võimalikke seadmeid (BT, Wifi, RFID vms) ning koostada nende kohta tabel, kus siis kajastuks hind, mõõtmed, energiatarve, sobivus FPGAga jne. Oluline on, et seade mahuks mugavalt robotile ning ei tõmbaks 2 sekundida akusid tühjaks ja oleks FPGAga liidestatav. Kui leida veel parameetreid seadmete iseloomustamiseks siis see on ainult kasuks, kuna see lihtsustab lõpliku valiku tegemist.
Valikud =>
Valikud =>
Tehnoloogia
- WiFi - vajab olemasolevat WiFi võrku
- Bluetooth - vajab Bluetooth moodulit arvutis
- ZigBee - vajab lisaseadet arvutile
Riistvara
- USB sisend - vajalik uC mis võimaldaks USB Host funktsionaalsust
- uC vabad viigud - vajalik olemasoleva firmware täiendamine
- JTAG sisend - vajalik uC juhtmevaba mooduli ja JTAG liidese sobitamiseks
Tarkvara konfiguratsiooni laadimiseks
- Python - mitte kõigil operatsioonisüsteemidel ei ole python vaikimisi installeeritud
- Java - JVM on vaikimisi installeeritud enamikel arvutitel
- C/C++ - eraldi kompileeritud kood erinevate platvormide jaoks
reede, 7. detsember 2012
Testid
Lihtne VHDL
valgusdioodide ja lülitite komplektiga kõik viigud kontrollitud, paar viiku oli kiirustades jootmata jäänud
HostIO ja python
sama VHDL mis eelmises testis, valgusdioodide väärtused HostIO abil ka arvutisse.
arvutis (MacOSX) oli python script mis selle vastu võttis. oluline oli viimase libusb install
MicroBlaze Micro Controller System (MCS)
abiks link - Microblaze MCS Tutorial v2.pdf
maksimaalne mälu 32k, rohkem XuLA peale ei mahu
tegime komplekti:
- sisend - lülitid
- väljund - valgusdioodid
- konsool - serial ühendus üle BlueToothi
välja nägi installatsioon selline :)
Analoogsisendite kasutamine
vajab veel uurimist ... http://tech.groups.yahoo.com/group/xsboard-users/files/ ja sealt manus xula_analog_io.tgz
neljapäev, 6. detsember 2012
Algus
Jutul käidud, et siis alguskuupäevaks märgime 29 november 2012.
Järgmisel kohalkäigul susati pihku XuLA-200 millele tuli samas ka jalad külge tinutada. Tulevane ohver paistis esmasel vaatamisel selline isend olevat - http://www.parallax.com/go/boebot
Jutu järgi sellised eesmärgid - BASIC Stamp asendada, et saaks:
XuLA dokumendid, skeemid jne. - https://github.com/xesscorp
UCF file alustuseks - XuLA.ucf
Uue projekti alustamisel:
Järgmisel kohalkäigul susati pihku XuLA-200 millele tuli samas ka jalad külge tinutada. Tulevane ohver paistis esmasel vaatamisel selline isend olevat - http://www.parallax.com/go/boebot
Jutu järgi sellised eesmärgid - BASIC Stamp asendada, et saaks:
- juhtimine puhtas VHDL'is
- softcore prose kasutamine - programmid näiteks C's
- üle BlueToothi programmeerimine
XuLA dokumendid, skeemid jne. - https://github.com/xesscorp
UCF file alustuseks - XuLA.ucf
Uue projekti alustamisel:
- Family => Spartan3A ...
- Device => XC3S200A
- Package => VQ100
- Speed => -4
- Bitstream => Process Properties => Configuration Options => Unused IOB Pins => Float
- Bitstream => Process Properties => Startup Options => FPGA Start-Up Clock => JTAG Clock
Tellimine:
Postitused (Atom)

