どうも、56期サッカー班リーダー”らしい”、「55期」のSpiralRayです。
中学三年生の皆、研修旅行お疲れ様です。
なぜ、”らしい”なのかといいますと、レスキューのプログラムばかりをやっているからです。
理由としては
- サッカーロボットに搭載予定のCortexが上手く動作しない
- Windowsプログラミングなら現役部員内では一番なれている。
の2点です。(C言語としてでも現役では一番だと自負しています)
レスキューロボットにはカメラを2台搭載し、AVRとCOMポートで通信し、各センサーの値を読み込む予定です。
COMポートを使うと言うことで、後輩KφにF2DKcommというライブラリを使って制作してもらっていたわけですが、研修旅行中に.NET FrameworkにOpenCVを移植してしまいました。
Kφ、ごめんなさい。
これがそのソフトウェアの画像です。(制作中のものです)
SAIというペイントツールでRGB値をとりながら調整しているときのスクリーンショットです。
上の入力画像から順番に
です。
右の方のカメラはオートフォーカス、オートキャリブレーションがついているので、きれいに読み込めていますが、左のカメラは手動なので緑認識が薄れてしまっています。
緑検出のソースコード自体が即席で、1時間程度しかかけていないのでまだ調整が必要です。
ライントレースの手法について先代様に相談する必要がありますね。
坂登りの手法も問題ですが、一番の問題はコースですね。
大阪での全国大会で見たときは壁が透明でしたが、どう対処しましょうか。
ソナーを使って検出…が一番妥当なのですが制作費用の問題も出てきます。
画像解析…奥が深いですね。
—–
後輩のプログラミングのレベルを上げる方法を模索しています。
中学一年生にC言語がまともに扱える人間はまだいなく、問題です。
C言語を理解しても、プログラム的ソリューションを見つける方法は経験と直感で決定するので、冬休みの間にはある程度できるようになってもらわないと将来困ります。
かく言う私は中学二年生の時に漠然と理解したのですが、これはプログラム要因としてならいいのですが、ハードウェア知識を付けた上でのことでは結構厳しいものがあります。
(組み込み開発では変数と関数を理解していれば機械的にはプログラムできるのでいいといえばいいのですが、将来的には…)
プログラムは無限の可能性があるので是非習得してもらいたいですね。
Dxライブラリを使ったミニゲーム制作くらいが練習に最適です。
ゲームプログラミングは変数を使って操作をする処理が多いので、組み込みのプログラムの練習に最適だと思っています。(AVRで直接やる手もありますが、ミニゲーム制作の方が時間もそこまではかからないし、何よりプログラムをしたという実感があります。)
—
長々と描きましたが、張り切っていきましょう。
—
p.s. koujiはソースコードを見ていると、ポインタの理解が足りていないと推測されます。一番難しいところではありますがOpenCVのソースコードないで大きく処理落ちしてしまう記述がありました。
コメントお待ちしております!
RSS feed for comments on this post. TrackBack URL