Filed under:
SH-2A
SH-2Aで日本語フォントのロード、表示に対応しました。
日本語フォントは255KBもあるので、SDからロードしていますが、いくら1MBの内蔵RAMがあるSH7262でも少しきついのでは…?とおもっていたりします。
プログラムは後日公開します。
Filed under:
SH-2A
こんにちわ。
試験も終わって久々の更新です。
今日は二つのタスクをクリア。
- STBeeで加速度センサーの関数が完成
- T-SRSの外部メモリを使用して動画を再生
この2点です。
加速度センサーの方はI2CのAVR互換ライブラリを作成しておいたので5分ほどで終了。
動画再生には何段階か苦労がありました。
必要であったことは
- 圧縮されている動画から、無圧縮のRGB565形式の320*240画質の連続データに変換
- 外部RAMの32MBに対してできる限り(200コマ)を読み込み
- 順番に再生(タイマで再生スピードを調整)
この3段階です。
1段階目はあらかじめ試験前に作っていました。
aviから変換できるプログラムをC#を使って作成しました。
ビットマップ表示機能を搭載するより以前に、画像データを同じ形式に変換するプログラムを作成していたので、少しいじくるだけで完成しました。
2,3はマイコンいじくるだけなので省略。
SD関係はもちろんFatFs使用。
動画再生の様子を上げておきます
15fpsで作ったので、200コマでも13秒分しかはいらないんですよね…
作ったはいいが、北斗or若松LCD拡張ボードでのサンプルが既にダウンロード可能らしい…
もっと速くやっときゃよかった(笑)
けど、プログラムはバイナリしか公開されていないっぽいですね。
参考にならない…orz
明日からはサッカーとレスキューと平行してやっていこうと思います(両方機体がないw)
Filed under:
SH-2A
こんばんわ。SpiralRayです。
まずはこれをみてください
今日プログラムを変更したカメラによるライントレースロボットです。
一昨日より2~3倍ほど速くなっているのではないでしょうか?
とはいってもコースが簡単であるだけであって、本当は問題は山積みです。
まず、PD制御を取り入れたつもりが、センサー値が負のときに変な動作をする。
原因はおそらく、符号が必要な変数がunsigned型になってしまっているのだとおもいます。
これのせいで、PD制御が、ラインがカメラの左半分にあるときしか働いていません。
次に、直角や急なカーブの部分の処理がかなり雑であると言うこと。
カメラでのライントレースはラインセンサーを使用するよりかなり前方のラインしか読むことができないので、速度を落とさずに旋回するときに(工夫しないと)ラインが見えなくなります。
今回のこのプログラムは、ラインが見えなくなったときには前回のモーターの速度をそのまま維持するだけというかなり雑な作りとなっています。
主な問題としてはこの二点です。
金曜日にPD制御の部分は直したいと思います。
土曜日からは試験準備期間、および試験期間があるので、2週間部活動はできなくなります。
それではまた金曜日に(?)
ちなみに、金曜日にはこれよりさらに速くライントレースができるようになっているはずです。はず…
12/3日追記
現段階のソースコードの一部を公開しておきます。
とはいっても本当にたいした処理をしていないのでがっかりするだけですけどね。
camera_linetrace
PID制御うまくいきました。やはり原因はunsignedでした。
計算式中にunsignedの変数が入っていて、そこでマイナスじゃなくなっていました。
Filed under:
SH-2A
どうも、SpiralRayです。
SH-2AにTOPPERS/ASPというリアルタイムOS(以下RTOS)を搭載しました。
RTOSによってマルチタスクが可能ですよっ!
現在のタスクの状況は
- メインタスク(ボタンの処理、UARTの処理、タイマ処理)←いずれ分離します
- 画像解析タスク(ライントレースの全部分を担っています)
- LCD表示タスク1
- LCD表示タスク2(LED点滅付)
となっています。
動画に映っている画面の左上で点滅しているのが、LCD表示タスクの処理です。1秒周期と3秒周期の点滅があります。
前回のロボカップのサッカーロボットでは、AVRでFreeRTOSというRTOSを使おうとしましたが、AVRの処理速度の問題で使用を断念したのですが、SH-2Aは144MHz、ATMega644Pを使用していましたがその7.2倍もの速度がっ!(単純に比例して速くなるわけではないですけどねー)
RTOSを乗せ、さらに、モーター制御にPWMを使用できるようになりましたっ!
前回乗せた動画では、10msモーターを動かすごとに停止するというガッガッと小刻みに動いていく使用になってしまっていたわけですが、PWMによってなめらかに動くようになりました。
とはいってもライントレースのプログラム自体はほぼ改変していないのでユラユラ揺れながらラインをたどっていくようになってしまっています。
水曜日にPD制御を取り入れる予定です。
それではまた。
Filed under:
お知らせ
冬休みの活動の予定です。
12月
17,18,20,21,22,24,25,27,28
1月
7
AM9:00-PM5:00 全ての日で午前・午後両方活動できます。
Filed under:
CNC
はじめまして。これは自分にとっての大変久しぶりな更新なので、改めてご挨拶させていただきます。56tomoと申します。
さて、前回の記事で僕らの大切なCNCが分解され、一応組みあがっていたのですが、なぜかネジがいくつか机の上に……
しかし、そんなことも気にせず切ってみました。
……
その結果、円が横向きの直線に!速度はcos波を描きながら左右に移動しました。要するに、Y軸の軸と板が接触していなかったのです。
その原因究明と修復……何人も協力して3~4時間が経過しました……おかげで今日は何もできなかったです……
また、
このクラブでは、CNCは今までMach3を使用して、Phenom XⅣ Black Editionの乗ったPCを使って動かしていましたが、やはり性能が勿体無いです。
そこで登場したのが、5年ほど前のパソコン。CNCを動かすのに必要なパラレルポートが付いています。
そして、ubuntuメインのEMC2をPCにインストールし、使用を試みました。
しかし結果はエラー。X,Y,Zは動いてもスピンドルが回りません。ただのDCモーターで、信号線の片側は12V+に接続されています。invertしてもinvertしなくても結果は同じでした。
ピン番号がおかしいのかな?
もう回しっぱなしにしておこうか……
Filed under:
CNC
Flankerです。後期入ってから一度も更新していませんでした・・・すいません。後期になったので僕が洛星ロボット同好会会長となりました。皆様よろしくお願いします。
さて、ノートルダムバザーも無事終了し、みなさんロボカップに向けて集中して製作しています。
僕もいろいろモーター関係の開発やってました。しかし改めて思ったのは、浅草ギ研のDCギアードモーターでやるのが、一番楽ですね。いろいろ研究してますが、ブラシモーターは制御もしやすいし、浅草のモーターならある程度トルクとスピードでますしね。
で、今日の本題はCNCです。今年の3月頃から使い始め、ロボカップ、文化祭などいろいろ酷使してきたせいで、CNCの調子が悪くなってきました。 X軸とY軸動かすときに異音がするのです。なんで、かれこれ半年以上使い倒してきたので、今日オーバーホールをしました。(まあオーバーホールといいつつ もZ軸はやりませんでしたし、そのほかやってないところもあるのですが・・・)
写真はX,Y軸をバラした後、Y軸を組み上げたところです。余分なグリスやMDFの粉などがしっかり掃除できて良かったです。
(しかし、僕の爪の中は真っ黒ですが・・・)
また、基板加工用カッターも購入したので、プリント基板が切削できようになります。これで複雑な回路でなければこれでプリント基板が作れるようになります。
Filed under:
ブログ
中1を含んだ数人で今日は日本橋へ買い出しに行ってきました。
シリコンハウス→ディジット→キッズランドといきました。
レスキュー用にタミヤギヤードを買いました。
380の300対1です。
これがタイヤ部分をあわせてみた画像です。
横幅だけで25cmとなってしまいました…
大丈夫でしょうか…?
世界大会など経験した方、アドバイスおねがいします…
また、サッカー用にセンサーを買いました
。
京教の方がブログに書いていたヤツです。
指向角度±45°です。これで正確な方向が分かるはず…
画像はないですが他に
- クラブのデスクトップ用のDVDドライブ
- STM32用にJTAGのST-LINK
を購入しました。
Filed under:
SH-2A
SH-2Aマイコンのカメラ入力機能を使ってライントレースをしてみました。
基板はTACさんのものです。
結構いい加減な処理(時間をかけていない)ですが、きちんと動くことは確認できました。
この動画を撮った後、値の調整をしようと思って5分くらい弄っていると、モーターのギアが壊れました
さすがダイ○ンモーター
水曜日に日本橋でタミヤギアード買う予定です…
その後、STM32でRTOSを試していました。
弄っていると、I2C1とI2C2をRTOS上で同時に使うと固まるという謎の現象が発生しました。
原因不明…おそらく実行タスク切り替えによるI2C通信のタイムアウトだと思います。
ロジックアナライザーを買ったので使ってみようと思いましたが、使い方が分からない…
I2Cのプロトコルの選択すらできなかったです。
ネットでSN登録しないと使えないのかな…?
まだまだ先は長そうです…
デバッグのLCD欲しいな…
レスキューのカンの救助方法は立命館守山さんのやり方を採用しようかと考えています。
いいですよね?ね?
そういえば、FlankerがBLモーターの逆回転に成功していました。
これで安心して機体を作ることができる…はずです。
では、この辺で。
Filed under:
55期サッカー班
試験期間が終了し、「秋休み」となる今日この頃、STBeeをやっと使い始めました。
マイコン徹底入門のおかげでかなりすんなりとプログラムできています。
UARTで通信をしながら、I2CでHMC6352、またスレーブに設定されたAVRを制御しました。
ストリナで売っているこのコンパス、赤色基板になってから応答が悪くなってAVRでは固まることがあったんですけど、STM32ではすんなりいってよかった。
処理が速い速い。
しかし、ボールセンサーをつけたAVRの応答性が非常に悪く、100回読み取るのに11秒もかかる。
つまり一回あたり0.11秒もかかってしまっている。
SPIに変更するか、IO3本で拘束に送信し続けるかのどっちかですね。
自分的にはSPI使いたいけど…
後者の場合、同期信号で1本、データ送信用に1本必要なだけだから、2本でもいいけど…
3本の方が単純だし速いからねー。
AVRの残りピン数と相談してみよう。
« 新しい記事 —
古い記事 »