メニュー English Ukrainian ロシア語 ホーム

愛好家や専門家向けの無料テクニカル ライブラリ 無料のテクニカルライブラリ


無線電子工学および電気工学の百科事典
無料のライブラリ / 無線電子および電気機器のスキーム

シンプルなロボット。 無線エレクトロニクスと電気工学の百科事典

無料のテクニカルライブラリ

無線電子工学と電気工学の百科事典 / ラジコン機器

記事へのコメント 記事へのコメント

この記事では、単純な「ロボット」の図を示します。 彼は光のところに行きますが、光源がない場合は、「自由探索」モードがアクティブになります。 ロボットが運転し、衝突した場合は発進して方向転換します。

シンプルなロボット。 ロボットの模式図
(クリックして拡大)

ロボットの心臓部は ATMEL マイクロコントローラー AT90S2313 ですが、この会社の他のマイクロコントローラーを使用することもできます。このマイクロコントローラーにはプログラム用の 2kb のメモリ、15 個の入出力ポート、利用可能な電力 - 4 ~ 6V が備わっています。 エンジンは、「エンジンドライバー」、つまりL293Dマイクロ回路(国内の類似品はKR1128KT4A)によって制御されます。 センサーとしてフォトレジスター SF3-1 を採用することにしました。

ロボットは XNUMX つのモーターで構成されています。 特定のアクションに対してどのように機能するかは次のとおりです。

チーム トラベルモーター スイングモーター
フォワード (F) 進む 止まる
右前 (FR) 進む 進む
左前 (FL) 進む 前に
バック (B) 前に 止まる
バックライト (BR) 前に 進む
左後ろ(BL) 前に 前に
左後ろ(BL) 止まる 止まる

回路で使用される無線要素:

マイコン AT90S2313

マイクロサーキット L293D (国内アナログ - KR1128KT4A)

2 フォトレジスタ SF3-1

4MHzのクォーツ

コンデンサ 22~24pF

スタビライザー 7805 (または KREN5A)

100 オームの抵抗器 (オプション)

XNUMXつのモーター

電源 Vbat - 単三電池 4 本、またはクラウン (1V) 9 本

電源 Vm-1クラウン(9V)

回路を組み立てた後、プログラムをマイクロコントローラーにダウンロードする必要があり、ロボットの準備が整います。

/**************************************************** **** ***

チップタイプ:AT90S2313

クロック周波数: 4,000000 MHz

メモリモデル:Tiny

外部 SRAM サイズ : 0

データスタックサイズ: 32

****************************************************** ***** **/

#include <90s2313.h>

#include

#含む

// 周辺機器の操作を便利にするための定義の割り当て

#定義 OUT PORTB

#定義 MOTOR_F 7

#MOTOR_B の定義 6

#定義TURN_R 5

#定義TURN_L 4

#PIND で定義

#定義 LIGHT_R 0

#定義 LIGHT_L 1

#define BUMPER_F 2

#define BUMPER_B 3

// 可能な運転モード

enum {停止、F、FR、FL、B、BR、BL};

// ------------------------------------------------ ------------------------------

// 遅延 t x 10ms

// ------------------------------------------------ ------------------------------

void Delay_10ms(符号なし文字)

{char i;

for(i=0;i

// 移動方向を選択するための確率表

// 現在の移動方向に基づく

符号なし文字 p[7][7] =

{14、43、57、71、86、93、100、

7、43、71、100、100、100、100、

7、50、93、100、100、100、100、

7、50、57、100、100、100、100、

29、29、29、29、57、79、100、

36、36、36、36、71、93、100、

36、36、36、36、71、79、100};

// 現在の移動方向

unsigned char this_move;

// ------------------------------------------------ ------------------------------

// モーターの組み合わせをオンにして、特定の方向に移動します

// ------------------------------------------------ ------------------------------

void go(unsigned char 方向){

スイッチ (方向) {

ケース停止:

OUT.MOTOR_F=0;

OUT.MOTOR_B=0;

OUT.TURN_R=0;

OUT.TURN_L=0;

破る;

ケース F:

OUT.MOTOR_F=1;

OUT.MOTOR_B=0;

OUT.TURN_R=0;

OUT.TURN_L=0;

破る;

ケースFR:

OUT.MOTOR_F=1;

OUT.MOTOR_B=0;

OUT.TURN_R=1;

OUT.TURN_L=0;

破る;

ケース FL:

OUT.MOTOR_F=1;

OUT.MOTOR_B=0;

OUT.TURN_R=0;

OUT.TURN_L=1;

破る;

ケースB:

OUT.MOTOR_F=0;

OUT.MOTOR_B=1;

OUT.TURN_R=0;

OUT.TURN_L=0;

破る;

ケースBR:

OUT.MOTOR_F=0;

OUT.MOTOR_B=1;

OUT.TURN_R=1;

OUT.TURN_L=0;

破る;

ケース BL:

OUT.MOTOR_F=0;

OUT.MOTOR_B=1;

OUT.TURN_R=0;

OUT.TURN_L=1;

破る;

}

}

// ------------------------------------------------ ------------------------------

// 確率表に従って、次のステップでの移動方向を選択します

// ------------------------------------------------ ------------------------------

unsigned char next_move(void){

符号なしcharpp、i;

pp = ランド()/327; // 乱数 0..99 を取得します

for (i=0;i<7;i++){ // 確率テーブルで一致を探します

if (p[this_move][i] > pp) ブレーク;

}

this_move = i; // 新しく受信した方向を現在の方向として書き込みます

リターン(私);

}

// ------------------------------------------------ ------------------------------

// フロントバンパー割り込み処理 (INT0 = PD2)

// ------------------------------------------------ ------------------------------

割り込み [EXT_INT0] void ext_int0_isr(void)

{

if(this_move==FR) go(BL);

if(this_move==FL) go(BR);

そうでなければ行く(B);

遅延_10ms(250); // 2.5×2秒以内に出発

遅延_10ms(250);

この移動=B;

}

// ------------------------------------------------ ------------------------------

// リアバンパー割り込み処理 (INT1 = PD3)

// ------------------------------------------------ ------------------------------

割り込み [EXT_INT1] void ext_int1_isr(void)

{

if(this_move==BR) go(FL);

if(this_move==BL) go(FR);

そうでなければ行く(F);

遅延_10ms(250); // 2.5×2秒以内に出発

遅延_10ms(250);

this_move=F;

}

// ------------------------------------------------ ------------------------------

// "ランダムウォーク"

// ------------------------------------------------ ------------------------------

unsigned char walk(void){

// このループは「フリーローミング」を構成します

// どの光センサーからも信号がありません

while((IN.LIGHT_R) && (IN.LIGHT_L)){

go(next_move()); // 次の移動方向を取得し、

遅延_10ms(250); // この方向に 2.5 秒移動します

}

// このループは、ライトへの動きを整理します。

// 少なくとも XNUMX つの光センサーからの信号があります

while((IN.LIGHT_R==0) || (IN.LIGHT_L==0)){

if((IN.LIGHT_R==0) && (IN.LIGHT_L==0)) go(F);

それ以外の場合 (IN.LIGHT_R==0) go(FR);

それ以外の場合 (IN.LIGHT_L==0) go(FL);

}

return(0);

}

// ------------------------------------------------ ------------------------------

// メインプログラム

// ------------------------------------------------ ------------------------------

無効メイン(ボイド)

{

DDRB=0xff; // ポート B のすべてのラインを出力に割り当てます

ポート B = 0x00; // そしてそれらを低く設定します

DDRD=0x00; // ポート D のすべてのラインを入力に割り当てます

ポート = 0xff; // 内部負荷抵抗を接続します

// 外部割り込みの初期化

// INT0: オン

// INT0 モード: 立ち下がりエッジ

// INT1: オン

// INT1 モード: 立ち下がりエッジ

GIMSK=0xC0;

MCUCR=0x0A;

GIFR=0xC0;

// 割り込みを有効にする

#asm("せい")

// メインループ開始

while(1) ウォーク();

}

プログラム、ファームウェア ファイル、ロボット図を sPlan 形式でダウンロード

出版物: cxem.net

他の記事も見る セクション ラジコン機器.

読み書き 有用な この記事へのコメント.

<<戻る

科学技術の最新ニュース、新しい電子機器:

交通騒音がヒナの成長を遅らせる 06.05.2024

現代の都市で私たちを取り囲む音は、ますます突き刺さるようになっています。しかし、この騒音が動物界、特に卵から孵化していないひよこのような繊細な生き物にどのような影響を与えるかを考える人はほとんどいません。最近の研究はこの問題に光を当てており、彼らの発達と生存に深刻な影響を与えることを示しています。科学者らは、シマウマダイヤモンドバックのヒナが交通騒音にさらされると、発育に深刻な混乱を引き起こす可能性があることを発見しました。実験によると、騒音公害によって孵化が大幅に遅れる可能性があり、孵化した雛は健康増進に関わる多くの問題に直面している。研究者らはまた、騒音公害の悪影響が成鳥にも及ぶことを発見した。生殖の機会の減少と生殖能力の低下は、交通騒音が野生動物に長期的な影響を与えることを示しています。研究結果はその必要性を浮き彫りにしている ... >>

ワイヤレススピーカー Samsung ミュージックフレーム HW-LS60D 06.05.2024

現代のオーディオ技術の世界では、メーカーは完璧な音質を追求するだけでなく、機能性と美しさを組み合わせるためにも努力しています。この方向への最新の革新的なステップの 60 つは、2024 World of Samsung イベントで発表された新しい Samsung Music Frame HW-LS60D ワイヤレス スピーカー システムです。 Samsung HW-LS6D は単なるスピーカー システムではなく、フレーム スタイル サウンドの芸術品です。 Dolby Atmos対応の5.2スピーカーシステムとスタイリッシュなフォトフレームデザインの組み合わせにより、インテリアに最適な製品です。新しい Samsung Music Frame は、あらゆる音量レベルでクリアな対話を実現するアダプティブ オーディオや、豊かなオーディオを再生するための自動ルーム最適化などの高度なテクノロジーを備えています。 Spotify、Tidal Hi-Fi、Bluetooth XNUMX 接続のサポート、およびスマート アシスタントの統合により、このスピーカーはあなたのニーズを満たす準備ができています。 ... >>

光信号を制御および操作する新しい方法 05.05.2024

現代の科学技術は急速に発展しており、日々新しい手法や技術が登場し、さまざまな分野で新たな可能性を切り開いています。そのような革新の 1 つは、ドイツの科学者による光信号を制御する新しい方法の開発であり、これはフォトニクス分野での大きな進歩につながる可能性があります。最近の研究により、ドイツの科学者は石英ガラス導波管内に調整可能な波長板を作成することができました。液晶層の使用に基づくこの方法により、導波路を通過する光の偏光を効果的に変化させることができる。この技術的進歩により、大量のデータを処理できるコンパクトで効率的なフォトニックデバイスの開発に新たな展望が開かれます。新しい方法によって提供される偏光の電気光学制御は、新しいクラスの集積フォトニックデバイスの基礎を提供する可能性があります。これにより、次のような大きな機会が開かれます ... >>

アーカイブからのランダムなニュース

掘削リグの代わりに極超音速ミサイル 18.08.2015

地熱エネルギーは太古の昔から人類に貢献してきました。 古代ローマ時代から、温泉は大浴場や床暖房に利用されていました。12 世紀には、フランスで自然熱を利用した世界初のセントラル ヒーティング システムが建設されました。 現在、世界中で約 000 MW の地熱発電が行われており、さらに 28 GW が暖房、スパ、産業プロセス、淡水化などに使用されています。

ただし、地下から蒸気を放出するには、数キロの深さの井戸が必要であり、深さに応じて、それぞれ 5 万ドルから 20 万ドルの費用がかかります。 テストされていませんが、はるかに安価な方法がアメリカの会社 HyperSciences によって提案されました。 その創設者であるマーク・ラッセルは、極超音速ミサイルを爆撃して地殻に穴をあける特許を取得しました。

ラムジェットエンジンをベースにした加速器には、特別な研磨コアを備えたロケットが取り付けられています。これは、この「銃」のチャンバーとバレルの両方として機能します。 ガスが加速器に注入され、ロケットが点火してチャンバー内に高圧が発生し、2 km / sの速度で飛び出すことができます。 著者によると、これは岩石を粉砕するのに十分であり、その残骸は井戸から吸い出されます。 効率を高めるために、著者はいくつかのアクセラレータのインストールを使用することを提案しています。

ロケット自体の設計は非常に一般的な用語で特許に記載されていますが、著者は掘削強度を高めるためにプラスチック製の爆薬チップを装備できることを示唆しています. 温度センサーと深度センサーもそこに配置できます。

詳細が不明であっても、Russell 氏は石油会社 Shell から GameChanger プログラムを通じて 1 万ドルの助成金を得ることができました。

その他の興味深いニュース:

▪ インテルCore Duoプロセッサ2

▪ 飛行船列車

▪ 疑わしい海事法

▪ 救急車の通知

▪ 地球を回る軌道輪

科学技術、新しいエレクトロニクスのニュースフィード

 

無料の技術ライブラリの興味深い資料:

▪ サイトセクション 充電器、蓄電池、バッテリー。 記事の選択

▪ 記事 ツァレグラドの門の盾。 人気の表現

▪ 記事 ガムって何? 詳細な回答

▪ 記事医師-統計家。 仕事内容

▪ 記事急速 LED ファイア (オプション 3)。 無線エレクトロニクスと電気工学の百科事典

▪ 記事 160m対応のシンプルなSSBミニトランシーバー。 無線エレクトロニクスと電気工学の百科事典

この記事にコメントを残してください:

Имя:


Eメール(オプション):


コメント:





このページのすべての言語

ホームページ | 図書館 | 物品 | サイトマップ | サイトレビュー

www.diagram.com.ua

www.diagram.com.ua
2000-2024