読者です 読者をやめる 読者になる 読者になる

日曜技術者のメモ

趣味でやった事のメモ書きです。

多層パーセプトロンをPythonで実装してみた-手書き数字認識-

前回(↓)の続き。 se.hatenablog.jp 簡単な分類で動作を確認できたので次は数字認識をやってみる。 多層パーセプトロンをPythonで実装してみた-1- - 日曜技術者のメモ で書いたクラスは出力層が二個以上に対応していなかったので修正して使った。 ブログは修…

多層パーセプトロンをPythonで実装してみた-2-

前回(↓)の続き。 se.hatenablog.jp 多層パーセプトロン各層の実装ができたので実際に動かしてみる。 パーセプトロンの数や層の構成は↓を参考にした。 googlecloudplatform-japan.blogspot.jp 簡単な分類 直線分類 まず↓をやってみる。 実装は↓ # -*- coding:…

多層パーセプトロンをPythonで実装してみた-1-

A Neural Network Playgroundのデモが素晴らしかったので Pythonを使ってそれっぽく動く物を作ってみた。 開発環境 Visual studio 2015 community PTVS Python3.5.2 numpy 1.11.1 scipy 0.18.0 scikit-learn 0.18 matplotlib 1.5.3 多層パーセプトロン ニュ…

LPC1114FN28でマルチコプター作ってみた-フライトコントローラー-

マルチコプターのフライトコントローラを作ったときのメモ プロポ入力 S-BUSが使いたかったのでFutaba 10Jを採用 S-BUSはFutabaの規格で仕様は公開されてないが 解析している人がいたのでありがたく使わせてもらった Futaba S-BUS controlled by mbed | mbed…

LPC1114でマルチコプター作ってみた-フレーム-

マルチコプターのフレームを作ったときのメモ フレーム材料 材料は悩んだが入手性・強度・軽量・加工性を考えてアルミの角材+アルミ板を採用 カーボンは理想的だけと加工は大変だし何より高いので不採用 木材は加工が容易だが強度の見積もり方法が全く分から…

LPC1114FN28でマルチコプター作ってみた

1年位マルチコプターを作ってとりあえず飛んだ浮いたので色々メモしておく。 ↓はプログラム修正中でプロペラを外した写真 買った物 これで5万位 フレーム アルミ角材 アルミ板 ねじ プロペラ 1045プロペラ 電装 ブラシレスDCモーター(A2212) ESC(Simonk 30A…

LPC1114+CMSIS Libraryでprintfを使ってみた

LPC11xx_cmsis2_Libに実装されているUARTSend関数を使ってシリアル出力していたが 文字列以外の表示が面倒なのでprintfを使えるようにした。 今の所2種類の方法で動いたので両方メモしておく。 試した環境 LPCXpresso_7.7.2_379 LPCXpresso1114_cmsis2.zipを…

CypressでEZ-USB FX3 のキットを買ってみた

ZedboardとPC間で高速大容量通信の実験をしようと思いUSB3.0のキットを買ったので購入方法などのメモ 買ったのはCypressの「EZ-USB FX3 SuperSpeed Explorer Kit」$49と安価なのでこれにした。 CYUSB3KIT - 003 EZ - USB® FX3™ SuperSpeed Explorer Kit - Cy…

Simple framebufferを有効にする

Linux上からディスプレイに出力する方法を調べているとSimple framebufferという物がある様なのでqemu上で試したメモ。 qemuは前回のqemu2svの環境を流用。 qemu側の変更点 hw_if.cからソケット通信を削除して単体で動作する様に修正 ベースアドレスの変更 q…

qemu2svを試してみた-3-

qemu2svを試してみた-2- - 日曜技術者のメモの続き プログラムを書いてWrite/Readテストをした qemu⇔svの通信テスト 通信プログラムの作成 qemuからsvへアクセスする為のプログラムを作成した。 sv側にライトしてからリードするだけのプログラム。 main.c #i…

qemu2svを試してみた-2-

qemu2svを試してみた-1- - 日曜技術者のメモの続き Device Treeの準備と動作確認 Linux Device Tree Linuxカーネルに付属しているDevice Treeを使うとqemu上でブートはするがネットワークが繋がらなかった。 色々試した結果zynq-zed.dtsを修正する事で接続で…

qemu2svを試してみた-1-

qemuとSystemVerilogを接続してシミュレーションをするqemu2svがgithubにて公開されていたので試してみた SVHackathon2014B/qemu2sv qemu2sv qemu2svの入手&ビルド git clone https://github.com/SVHackathon2014B/qemu2sv.git qemu2svのビルドは付属してい…

C++11とC++14とSystemC

C++11やC++14といった新しいC++でSystemCを使ったらどうなるか軽く試したメモ C++11 C++11でSystemCがどうなるかについては↓の資料にまとめられています。 http://www.nascug.org/events/17th/black_cpp11_2_27_2012.pdf 一番気になったのはテンプレートにつ…

clangでSystemC2.2をビルドしてみた

clangでSystemC2.2がビルドできたのでメモ ただしこの方法はclangのバージョン3.3のみに有効 clangインストール インストールは以下ページを参考にしました。 CentOS5にLLVMとclangをインストールする | CentOS・Red Hat Linux実践テクニック - サンプルコー…

GDBでsc_int、sc_uintのアンダー/オーバーフロー検出をしてみた

SystemCライブラリのコードにオーバーフロー/アンダーフローを検出する機構を考えてた時に Twitter上でGDBでできると教えてもらったのでやってみた。 始めはGDB+Pythonを使おうかと思ったけどGDBコマンドでそれっぽくできた。

VGA端子の同期信号出力タイミング規定

今までFPGAからVGA出力する時 HSYNCやVSYNCのタイミングは適当にしていたが規格で決まっている様なのでメモしておく。

SystemC+GoogleTestを試してみた

Twitter上でSystemCでテストフレームワークが使えるかの話をしている時に 以下ページを教えてもらったので試してみました。 Using existing unit test frameworks with SystemC - Stack Overflow ソースコード まずはページに載っているソースコードをファイ…

STREAM Benchmarkをやってみた

STREAMというメモリ帯域を測定するベンチマークソフトがあるので試してみました。 http://www.streambench.org/ 上記ページにあるFTPサイトにはstream.exeがありますが Windows32bit版で実行にはCygwin.dllが必要です。 私はWindows7 64bit版なのでソースコ…

Terasic SoCKitのデモを実行してみた-HPS-

SoCKit System CD(Terasicのページからダウンロード)にデモが入っているので実行してみた。 HPS側は以下デモが入っています。 hps_gpio hps_gsensor hps_lcd my_first_hps デモ実行方法は「My_First_HPS.pdf]に記載されています。 my_first_hps実行方法 C:\a…

Terasic SoCKitでLinuxをブートしてみた

Terasic SoCKitを入手したのでLinuxをブートしてみました。 ↓箱の写真。 ↓ボード写真 MicroSDスロットは裏側にあります。 linuxブート方法はTerasicのページからRocketBoards.orgへの リンクがあったのでそのまま試しました。 Arrow SoCKIT Evaluation Board…

T-Kernelについて調べてみた

T-Kernelについてちょっと調べたのでメモT-KernelはオープンソースのリアルタイムOS T-Engineフォーラムでドキュメント・開発環境・ソースコードが公開されている。○ドキュメント 公開仕様書にあるドキュメントはユーザー登録不要で誰でも読める。 T-Kernel …

SystemVerilogのパラメータ付きクラスを試してみた(解決編)

SystemVerilogのパラメータ付きクラスを試してみたを更新してから Twitterで「Baseクラス作ったらpushできる」と教えて頂き解決しました。修正したコード module top(); class c_hoge_base; //Baseクラス追加 virtual function void print(); endfunction en…

SystemVerilogのパラメータ付きクラスを試してみた

[SystemVerilog] 接続記述をもっとエクストリーム的に書こうという記事で パラメータがついたクラスが紹介されているので試してみた。まずはパラメータが反映されているかテスト module top(); class c_hoge #(int k = 0); function print(); $display("k = …

プログラミング言語? NyarukoでLet's\(・ω・)/にゃーしてみた-2-

前回の足し算は1桁しか表示出来なかったので2桁表示に改造してみた。 それが以下プログラムadder2.nyaruko (」・ω・)」うー!(/・ω・)/にゃー!(」・ω・)」うー!(/・ω・)/にゃー!(」・ω・)」うー!(/・ω・)/にゃー!(」・ω・)」うー!(/・ω・)/にゃー!(」…

プログラミング言語? NyarukoでLet's\(・ω・)/にゃーしてみた-1-

Brainf**kを調べてたらnyarukoという言語を見つけたのでプログラミングしてみた。https://github.com/masarakki/nyaruko_lang命令は簡単。たった8つしかない。 (」・ω・)」うー(/・ω・)/にゃー - ポインタを右へ移動 (」・ω・)」うー!(/・ω・)/にゃー! -…

ZedboardにDACを接続してみた-TLC7528C編-

AM変調した信号を出力するためにDACをいくつか買いましたのでZedboardに接続して信号を出力してみます。まずは手持ちにあるTIのTLC7528C(10Msps)を使います。今はまだFMCコネクタを使えないので使えるのはPmodしかありませんがPmodは8pinしかありません。 そ…

root権限のないlinuxへ色々インストールしてみた

root権限がないlinux上で色々ツールを使いたかったのでやってみた。今回のターゲットは以下の制限がついています。 root権限がない yum使えない アクセスできる範囲が限られている インターネットにつながらない wgetが使えない sambaとFTPは動いている。 こ…

Vivado HLSでOpenCVを試してみた

仕事が忙しく更新が止まってます。4月に入れば更新速度上げれそうです。さて、先週ツイートしましたがFPGA2013というイベントの資料を見つけました。FPGA2013 Pre-Conference Tutorials tcfpga.org/fpga2013/— michuさん (@ginnyu_tei) 2013年3月9日 ちょっ…

Fedora18をVMWare Playerでインストールしてみた。

VMware Player上にFedora18をインストールしたのでメモ。 結構はまってしまったのでその辺を適当にまとめています。使用バージョンはVMWare Player 5.0.1 Fedoraのディスクは現在公開されているFedora-18-x86_64-Live-Desktop.iso 仮想PCの設定 バージョンは…

Microsoft VisioをCADとして使ってみた。

CNC

前回フリーのCADツールを幾つか書きましたが 私にとっては大変使いづらく別のツールを使うことにします。という訳で仕事で良く使っているMicrosoft Visioを使って図形を描いてみました。 VisioはDXFファイルで保存できますがそのまま保存してもNCVCで読めま…

CNCの使い方について調べてみた

CNC

前回切削をすると書きましたがその前に そもそも図面からCNCをどう動かすかを調べてみました。(今更・・・) 以下手順で作成していく様です。 CADで図面を書く NCVCで図面からGコードに変換する。 Mach3でGコードを読み込みCNCを制御する。 CADといえばAutoCA…

格安CNCを買ってみた。- Sable-2015 -

CNC

新年あけましておめでとうございます。年末更新出来なかったので・・・ (やったことは12月中旬~下旬の出来事) FMCメザニンボードを設計してみた-その1- で腹案があると言いましたがそれがこちら http://cncmill.web.fc2.com/ Sable-2015というCNCフライス…

FMCメザニンボードを設計してみた-失敗-

EAGLEで配線図はできたのでレイアウトをやります。EAGLEのフリー版では100x80mm 2層までです。 この範囲でまずはやってみます。右の白い四角が100x80の箱で左側がレイアウト予定の部品です。 この時点で無理な気がします・・・Routing Grid 10milで実行して…

SystemCで廃止/廃止予定の機能を調べてみた

SystemC Advent Calendar2012 の 23日目(になるかも?)の記事です。 よろしくおねがいします。SystemCのバージョンアップに伴って削除された機能や推奨されない機能 がどのくらい過去にあったか調べてました。古いコードを見た際に参考にするメモです。 (リ…

FMCメザニンボードを設計してみた-その1-

FMCコネクタが届いたので使えるようにボードを設計してみる。 使いやすいように2.57mmピンヘッダに変換するボードを作る予定です。 購入したコネクタは1.27mmピッチなのでなんとかなりそうです。 今のところ以下の選択肢 ユニバーサル基板で作る ハーフピッ…

FMCコネクタを買ってみた-注文から受け取りまで-

ZedboardにPmod以外の選択肢を追加するためFMCコネクタを注文してみました。FMCコネクタはsamtec社が製造しているコネクタです。 (高速コネクタでは有名な会社みたいです。)HPはこちら http://www.samtec.com/search/vita57fmc.aspxZedboardについているコネ…

Xilinx DDS Compilerを使ってみた-2-

前回の続きDDSに入力する加算量と周波数は以下数式の関係がある。変形するとこんなかんじ この式から実際にAMラジオで使える周波数の搬送波を作成してみる。 中波放送は531kHzから1602kHzまで9kHz刻みで放送されている。 Excelを使って中波帯の加算量を計算…

Xilinx DDS Compilerを使ってみた-1-

AM送信波の元となる搬送波をDDS Compilerで作成してみる。いつも通りPlanAheadを立ちあげてIPを追加します。 Project Managerの所にある「IP Catalog」を選択IP Catalogが表示されたら、Searchに「DDS」を入力すると DDS Compilerが出てくる。 今回はAXIに接…

オシロスコープSDS7102(V)を買ってみた-2-

今回は手持ちの信号をいろいろ見てみます。まずはこれ学生の時に作成した5VTTLお試しセット これには4.194304MHzのクリスタルオシレータを載せていて プログラマブルdivider(分周器)がに接続しています。 ではさっそく観測これで4分周しています。 オーバー…

オシロスコープSDS7102(V)を買ってみた-1-

AM変調した信号を波形で確かめたいのでオシロスコープを買いました。 OWON(オウオン)社のDS7102(V)という製品です。 amazonなら5万円切って売っていますがオウオンジャパン正規販売品だと 保証やサポート、日本語マニュアルもあるようなので別の所で買いま…

FPGAでAM送信機を作ってみた-2-

今回はZedboardへの実装を考えます。必要なのは ・音源の取り込み ・乗算器 ・DDS ・DAC ・BPFになります。 ZedboardにはADAU1761というオーディオ・コーデックICが 実装されているので音源の取り込みにはこれを使います。 乗算器はFPGA内の乗算器を使うか自…

FPGAでAM送信機を作ってみた-1-

大学の卒論で作成したAM送信機のVHDLコードが見つかった。 卒論発表会の時AMラジオを横において実演したのを覚えている。今読むといろいろひどいコードなので作りなおす事にした。 (非同期対策をしてなかったりROMテーブルをswich case文で長々書いてたり・…

Zedboard ADCでアナログ値を読んでみた -XADCのIPについて-

ADCの動作確認を前回やったので資料とか気になった事のメモADC系の資料で確認したのが以下資料 7シリーズfpgaのxadc12 ビット1mspsデュアルアナログ-デジタルコンバーター ユーザーガイド LogiCORE IP AXI XADC (v1.00.a) Product Guide ADCはZynqのみではな…

Zedboard ADCでアナログ値を読んでみた -2-

前回の続き前回はTOPモジュールを作成した。 次にこれをPlanAheadに取り込む。Add Sources->「Add or Create Design Sources」を選択し 「Add Files」で先ほど作成したsystem.vを選択する。保存場所自分で変えていなければ以下場所にあるはず↓ \<Project location>\<Project name>\<Project name>.srcs\sour</project></project></project>…

Zedboard ADCでアナログ値を読んでみた -1-

SPIはちょっと休憩して気晴らしにZynqが内蔵してる XADCの値を読んでUART経由で表示してみた。今回はSDKでプログラムを実行するとADCにて抵抗にかかる電圧を測定し プログラムを終了するという流れを作成しました。 プログラム自体はサンプルをほとんどその…

Zedboard SPIで通信してみた -3- (ほんのちょっと動作)

SPIでセンサに1byteだけデータを送信する事ができたのでメモ先週ツイートした通りSPIのSS0信号にバグがある様です。SPIが動かない犯人は多分おまえだぁぁぁ!!「Zynq-7000、SPI - MIO のマスター モードで SS0 信号がアサートされると SPI コントローラーが…

Zedboard SPIで通信してみた -2- (未完成)

続きから6.ソフトウェア開発 前回と同じ様にPlanAheadからSDKを呼び出し「Hello World」のCプロジェクトを作成する。 作成後「system.mss」のタブにps7_spi_1という項目がある。 Xilinxが用意したドライバがあり、そのドキュメントとサンプルがそこにある。 …

Zedboard SPIで通信してみた -1- (未完成)

ここしばらくZedboardのPSについているSPIを使って気圧センサと 通信させようとしていますが、うまく通信ができません。とりあえず、現状をメモ。使用する気圧センサは秋月で売っている「MPL115A1」という気圧センサです。 このセンサはSPIとI2Cの2タイプが…

Zynq-7000 EPP Concepts, Tools, and Techniquesをやってみた -2-

前の続き PSの設定完了後、TOPのHDLを出力します。 22.さっき作成したsystem.xmpを右クリックしてCreate Top HDLを選択 System_stub.vが追加される。 23.File -> Export -> Export Hardware for SDKを選択 24. Launch SDKにチェックを入れてOK これでハード…

Zynq-7000 EPP Concepts, Tools, and Techniquesをやってみた -1-

付属SDを使ったDemoがひと通り確認できたのでZynq-7000 EPP Concepts, Tools, and Techniques Guide という資料のチュートリアルをやってみようと思う。ちなみにこの資料私の手元に2種類あって一つはZedBoard向けもう一つはZC702向け?の様です。今回はもち…