南 晴輝のブログ

南 晴輝のブログ

マイクロプロセッサを応用した、自立動作型ロボットの開発を

目指します。

とくに ロボカップジャパンジュニア の

サッカー

レスキュー

に使用できるロボットを、目標とします。

Amebaでブログを始めよう!

こんにちは、南 晴輝 です。


CADてなんだろう。

 CADとは、「 Computer Aided Design 」のことで、コンピュータを使用した設計のことです。

1990年代頃までは、手書きで回路図や、機械図面などを書いていました。


開発設計などでは、試作、検証、量産試作、量産図面が必要で、その都度図面が


別にいりました。想像できるように、作業量が膨大で、基本設計終了後は、


トレーサと呼ばれる図面作成のプロに

お願いして負担をへらし、設計者は、検証を主にやっていました。

CADが導入されると、このような作業は、基本設計図面を元に、改良するだけで良くなり、


ほとんど設計者本人の手で、できるょうになりました。


他の人への説明がいらなくなり、設計品質が劇的に向上しました。

最近は、無料で使用できる、かなり本格的なCADが発表され。


設計環境がよくなっています。

ロボットの設計は、カット アンド トライの傾向があるので、とても有用です。



最後まで読んでくださり、ありがとうございます。


南 晴輝





独学 No.1


皆さん、こんにちは、みなみ せいき です。



独学について、考えてみます。

私は、何でも独学で習得するのが好きでした。


いままで独学で、学んだのは、以下のものです。

C言語、Java言語、C++言語、Pascal言語、BASIC言語、


Fortran言語、


アセンブラ言語(Motrola MC68000、ARMプロセッサ、Intel 8085,8051,


8086 Zailog Z80 )
 
一番やっかいだったのが、Javaでした。 当時(1985年)は、日本語の適当なもの


がなかったので1000ページほどの、英語のマニュアルを一年かけて勉強しました。



C言語も1978年当時、まだ日本語の本がなかったので、カーニハン アンド リッチーの

C Programming Language(英文)をUSAより取り寄せ、学びました。



C言語の開発環境は、半田づけで、Motrola MC68008を使用した、


マイコンボードを作成し、CPM-68Kを移植し3.5インチフロッピーデスク + RS-232Cでの


ターミナルを接続して浮動小数点が使えるシステムを構築しました。



なんでも情熱です。どうしてもやりたいという情熱があれば、本当に不可能はない


と実感しました。



みなさんも、好きなことにとことんチャレンジしてくださいね。


わからないことがあれば、何でも聞いてください。


大丈夫です。


最後まで読んでくださり、ありがとうございます。


南 晴輝



ヴィジュアル ベーシック

英語について No.1



初めて受けたTOEICの試験で、得点(スコア)が、730点でした。


当時の日本IBMの課長資格の最低点が、この点数です。


この時は海外での仕事をするとは、思ってなかったので、まったく試験準備を


していませんでした。
 
それから2年後、今度は一年に3回以上 海外での仕事が、舞い込みはじめました。


主に、北米、欧州での活動で、特に MEDICA (世界的な、医療機器と医薬品の展示会で


活発な商談が行われています。) ドイツ(Dusseldorf)に毎年参加し、


私が開発した医療機器の展示と説明をしました。




北米では、主にLOS Angelsで活動し、CALTEC (カリフォルニア工科大学の 


Vick 名誉教授と試薬開発のジョイント ベンチャーをたちあげました。

会議は当然、すべて英語なのですが、最初は、ほとんど理解できませんでした。


必死になって英会話を独学で勉強し、2か月後には会議で、数式をつかった議論ができました。


なんとかなるものですね。



これからの世界は英語ができないと、仕事がなにも進まないようになるでしょう。


今のうちが、チャンスです。分からないことがあれば、なんでもきいてください。

It's OK!


こんにちは、南 晴輝 ( みなみ せいき )です。


今回は、C言語を使う時に、重要なポイントです。


組み込みシステムで、本当に良くつかわれる、 構造体 のアクセスにポインタは


なくてはなりません。




配列とポインタ


1つ1つの変数に対して、ポインタを使用する利点はありません。

ポインタは配列や後述する構造体や 共用体と組み合わせて初めて利点が生まれるのです。

添え字を使った場合と、ポインタを使った場合の配列の中身を表示するプログラムを示します。



#include <stdio.h>

void main(){
int a[10] = { 5, 4, 9, 1, 10, 7, 8, 3, 2, 6 };
int i;

for ( i = 0 ; i < 10 ; i++ )
printf("%d ", a[i]);
}



#include <stdio.h>

void main(){
int a[10] = { 5, 4, 9, 1, 10, 7, 8, 3, 2, 6 };
int *p = a;
int *pend = a + 10;

for ( ; p < pend ; p++ )
printf("%d ", *p);
}

実は、配列の変数に対して添え字を使わない形の変数そのもの(ここではa)はその配列の

先頭アドレスを指すのです。

そして配列とは、メモリー上に連続して領域が取られるので、アドレスを1つ分(1バイトではない)増やせば、

配列の次の要素が得られるのです。

これまでのことを整理するためにlong型のポインタとchar型のポインタの違いを

見てみることにします。

コンピュータによってポインタの大きさは異なりますが、ここでは現在主流である

32bitと仮定して解説します。


上図のように、long型ポインタもchar型ポインタも、ポインタは32bit(4byte)変数です。

char型のサイズは8bit(1byte)なので、char型ポインタを1つ進めると、

ポインタの値は 1増えます。

これに対してlong型の場合は、32bit(4byte)の大きさなので、long型ポインタを1つ進めると、

ポインタの値は4(byte)増えます。1(byte)とか2(byte)増やすことは基本的にはできません。

char型ポインタにキャストして増やせば1増やすことも可能ですが意味がありません。

もし1(byte)とか2(byte)とか増えたら、無効な変数へのアクセスをしてしまうことになります。


次に、ポインタの演算について説明します。これから説明することは

コンパイラによって 多少違う点があるかもしれません。


ポインタはアドレスなので、アドレスの計算に意味がないような演算は許されません。

例えば、ポインタの乗算、除算は、意味がないので許されません。またポインタ同士の加算も

意味がありませんが、減算は要素数を知るために必要なのでできます。

あくまでも要素数になり、バイト数ではないことに注意が必要です。

さらに、ポインタ同士の比較は同じ型のポインタどうしてなければできません。

これらをまとめると以下のようになります。


許される演算

同じ型のポインタ同士の減算
同じ型のポインタ同士の比較
ポインタと整数の加算
ポインタから整数の減算


最後までお読みくださり、ありがとうございます。


必ず毎日ブログを更新していますので、是非見に来てください。

よろしくお願いします。


南 晴輝 



こんにちは、ミナミ セイキ です。

YouTube で面白い動画を見つけました。


世界各国のロボカップジュニアの試合です。

まずは、ドイツのチームです。


RobocupJunior Soccer B -Final- German Open 2012
The Rocys VS Tactic


http://www.youtube.com/watch?v=QPaqjfxQPFs



公開日: 2012/04/06

Das Finale auf der Deutschen Meisterschaft
im RoboCup Junior Soccer B 2012



RobocupJunior Soccer B -Final- German Open 2011
Team Tactic

http://ameblo.jp/armcpupro/entry-11598114313.html


アップロード日: 2011/04/06
Spielausschnitte des Teams Tactic von den RCJ German Open 2011.
Das Team belegte in der Soccer Version B den ersten Platz und qualifizierte sich somit fur die WM in Istanbul.
Unser Dank gilt den Sponsoren.


RobocupJunior Soccer World Championship 2010

http://www.youtube.com/watch?v=jBImbXF9s1I


アップロード日: 2010/08/20
To watch the video with sound visit:
http://www.vimeo.com/14266870


T'n'T Trailer of the RoboCup Junior World Championship 2010 in Singapore

Website: www.tnt-robotics.com


TNT チームが、ロボットの分解写真を掲載しているので、お勧めです。
CPUは、32ビットのARMプロセッサらしいです。メカも組み立て状況を掲載しているので
参考にになります。


Robocup 2012 Robotic soccer Junior A Finals
@ Singapore Science Centre 2nd Half


http://www.youtube.com/watch?v=U0h3phoMEGs


公開日: 2012/04/06
PHPPs vs Nanyang. Epic final ... Great Job boys!


皆さん、世界レベルが良くわかりますね。