自由課題

学んだり、考えたり、試したりしたこと。

Jetson NanoでFPVラジコンを作る(9)

前回までの記事 前回記事を書いたあとステアリングモーターと駆動モーターを制御するライブラリを書いた。 github.com RCCar::steer(float)とRCCar::go(float)を使ってこんな感じで制御できる。 両関数とも引数の値域は0.0〜1.0である。 int main(int argc, …

Jetson NanoでFPVラジコンを作る(8)

前回までの記事 相変わらずタミヤのランチボックスをJetson Nanoで制御しようとしている。 1/12 XBシリーズ No.49 XB ランチボックス 2.4GHz プロポ付き 塗装済み完成品 57749発売日: 2012/04/07メディア: おもちゃ&ホビー 今のところシステム構成は以下。 …

Jetson NanoでFPVラジコンを作る(7)

前回までの記事 今回はラジコンを操縦するための入力機器をJetson Nanoに接続してみる。 もちろん入力機器を無線接続したいので、bluetooth接続のゲームパッドを使用することにする。 8Bitodo SN30 Pro+ Bluetooth ゲームパッド Windows/Switch/macOS/Steam/…

Jetson NanoでFPVラジコンを作る(6)

前回はJetson Nano単体でラジコンを制御するのに失敗したので、今回は PCA9685というモータードライバーのチップを使用して制御を試みる。 実績はたくさんあるので、できないということはないはずだ。

Jetson NanoでFPVラジコンを作る(5)

今回はいよいよラジコンのステアリングサーボとモーターを制御してみる。 JetsonにはハードウェアPWMが2系統あるのでそれを使って制御できないか試してみる。 結論からいうと上手くいかなかったが、どうも同じことを試した人はほとんどいなかったようなので…

Jetson NanoでFPVラジコンを作る(4)

今回はJetson Nanoでタミヤのラジコンカーを制御するにあたり、そもそもラジコンカーとはどのようなシステムなのかを調べてみることにする。

Jetson NanoでFPVラジコンを作る(3)

前回記事 Jetson NanoでFPVラジコンを作る(1) - 自由課題 Jetson Nanoを使ってFPVラジコンを作る(2) - 自由課題 今回はJetson Nanoをベースボードに取り付け、走行テストをしてみることにする。 Jetsonの取り付けはJetson Nanoのキャリアボードの四隅につい…

Jetson NanoでFPVラジコンを作る(2)

前回記事: Jetson NanoでFPVラジコンを作る(1) - 自由課題 前回はJetson Nanoのセットアップをしたので、今回はラジコンのシャーシにJetson Nanoを取り付けるためのベースボードを取り付けてみる。 今回使っているのはタミヤのランチボックスというラジコン…

Jetson NanoでFPVラジコンを作る(1)

いきさつ Jetson Nanoを購入した1年以上前からJetRacerを作ってみたいと思っていた。 NVIDIA Jetson Nano 開発者キット B01発売日: 2019/10/01メディア: エレクトロニクス ただ、なんとなくボディなしの基板剥き出しで走行するよりも、例えばここでやってい…

自ら一歩踏み出すために: 書籍「カイゼン・ジャーニー」レビュー

本書の位置づけ 本書は、主にソフトウェア開発者を対象に、"現場のカイゼン"を行なっていく方法を解説した書籍である。 本書によると、主に 特にソフトウェア開発について経験が浅い方 を想定しているとのことであるが、紹介されている手法が多様であるため…

我々はいかにして不確実な環境下で成果を出すのか: 書籍レビュー"エンジニアリング組織論への招待"

まえがき 少し前は業務外でもコードを書いたり、某サイトに翻訳記事を提供したりしていたのだけれど、公私ともにばたついていることもありしばらくアウトプットができずにいました。それでも書籍は時間を見つけて読んではいるので、気軽なアウトプットの形態…

IoTシステムにおけるRESTful設計

RESTful Design for Internet of Things Systemsのドラフト版というものを見かけたので、ざっと読みつつ雑感をメモしておくことにしました。 なお、本記事はRESTに関してある程度知識を持っていることを前提としています。

YosemiteのIntelliJ IDEA CE上でGradleプロジェクトを作成するまで

もろもろの環境が少し落ち着いたので、前から気になっていたReactive Streamsを 試してみようと思ったのだけれど、そもそも自分のMBPにはソフトウェアの開発環境が全く入っていないことに気がついた。 ということで、まずは開発環境の整備から、と思ったのだ…

2015上半期に読んだ書籍まとめ

基本的に活字中毒なので、時間が空けばほぼ何らかの活字を読んでいる。思いつき以上のものはないのだが、ここ半年のAmazonの購入履歴の中からソフトウェア開発・ビジネス書について印象の強いものをまとめてみた。なお、それぞれのカテゴリ中の並びは購入順…

The NoTCP Manifesto 日本語訳

はじめに インターネット通信の高速化については個人的に結構前から興味があって、確か2012年か2013年時点でGoogleがQUICに取り組んでいたことはなんとなく覚えているのだけれど、インフラの話も絡んでくることもあり、なんとなく誰にでも検討できるものでも…

NetBeansにおけるアーキテクチャの質問(日本語訳)

はじめに インターフェイスを設計するために読んだ技術書まとめ - 自由課題 の記事でも紹介した書籍 APIデザインの極意 Java/NetBeansアーキテクト探究ノート作者: Jaroslav Tulach,柴田芳樹出版社/メーカー: インプレスジャパン発売日: 2014/05/23メディア:…

インターフェイスを設計するために読んだ技術書まとめ

アーキテクトの(機能面での)主要な仕事の1つに、システムを構成するサブシステム/コンポーネントの境界、つまりインターフェイスを決める、というものがあります。またはそこまで大げさに捉えなくても、例えばライブラリのAPIを設計する、というのは単にプ…

James Lewis/Martin Fowlerの"Microservices"日本語訳

はじめに 本記事はMartin Fowler氏のBlog記事を日本語訳したものです。 なお、訳は2014/11/09時点のもので、オリジナル記事中のコラムは訳せていません。コラムの訳に関しては、暇や反応を見ながらぼちぼちやろうと思います。 訳に対する指摘・ご意見などあ…

イベント駆動っぽくmbedのLチカをやってみた

すみません。タイトルはほぼ釣りです。 何周遅れかわかりませんが、mbed NXP LPC1768を買ったのでLEDチカチカ(Lチカ)のコードを書いてみました。 開けたらこれくらいのボードが入ってた。小さい。 pic.twitter.com/NDsOfu8lzl— kimito_k (@kimito_k) 2014, 1…

今日から始めるgitlab生活

ふとgitlabサーバを立ててみようと思い立って少し調べてみたところ、 意外と簡単そうだったのでgitlabを全自動でセットアップするVagrantfileを作ってみました。 正直あまり大したことはやってませんが、一応記録として。 kimito/vagrant_gitlab kimito/vagr…

Jenkins/Gitlab Merge Request Builder PluginのREADME訳

はじめに 本記事は 2014/09/09(commit:d9ce6a4bef)時点の https://github.com/timols/jenkins-gitlab-merge-request-builder-plugin のREADMEを適当に訳したものです。 なお、本プラグインはApache License, Version 2.0となっています。 特にメニューの名称…

Polymerでscriptタグを使わずにAJAXする方法

はじめに ぼちぼち勉強していたら、Google I/Oでブチあげられて俄然注目度が上がってきた(?)Polymerに関してです。 (関連記事は Polymer - 自由課題 を参照) リファレンスを見ていたら、<core-ajax>というエレメントが用意されているのを見つけました。確か公式チュート</core-ajax>…

Web ComponentsのライブラリPolymerを試しはじめるまでの記録

Polymerを試し始めるまでの手順を淡々とまとめました。 PolymerはWeb Componentsの機能をいろいろなブラウザで利用するためのライブラリです。詳しくはこちらなどを参照してください。 環境 OSX 10.9.3 VirtualBox 4.3.2 Vagrant 1.6.3

声に出して読みたいUNIX&LINUXライブラリ関数

C C++

"LINUXプログラミングインターフェイス"という本を読みました。 この本は、"本書は Linux および UNIX システムプログラミング API の(ほぼ)完全な解説を目標とし、内容 は広範囲の Linux プラットフォームに通用するもの(まえがきより)"ということで、約150…

Polymerのデータバインディングについて(公式ドキュメント日本語訳)

はじめに 最近気になっていたWeb Componentsを本格的に触り始めようかということで、Web Componentsの機能をフル活用したライブラリであるPolymerの公式ドキュメントを斜め読みしていたところ、データバインディングについて記載があったので訳してみました…

C++における単体テストのための依存性注入方法まとめ

はじめに あるモジュールを作成した時、当然ながら(ですよね?)このモジュール(以降テスト対象モジュールと呼びます)を何らかの方法でテストする必要があります。テスト対象モジュールが別のモジュール(以降依存モジュールと呼びます)に依存している場合、 テ…

node.jsを支えるlibuvのチュートリアル"uvbook" :ユーティリティ

この文書はuvbookの日本語翻訳の一部となります。文書そのものの説明その他については目次をご覧ください。

node.jsを支えるlibuvのチュートリアル"uvbook" :イベントループ

この文書はuvbookの日本語翻訳の一部となります。文書そのものの説明その他については目次をご覧ください。 より進んだイベントループ libuvはイベントループに対して相当な制御機構を提供しており、複数のイベントループで曲芸を行うことにより興味深い結果…

node.jsを支えるlibuvのチュートリアル"uvbook" :プロセス

この文書はuvbookの日本語翻訳の一部となります。文書そのものの説明その他については目次をご覧ください。 プロセス libuvはかなりの量の子プロセス管理機能を提供しており、プラットフォーム間の差異を抽象化し、ストリームや名前付きパイプを用いて子プロ…

node.jsを支えるlibuvのチュートリアル"uvbook" :スレッド

この文書はuvbookの日本語翻訳の一部となります。文書そのものの説明その他については目次をご覧ください。 スレッド ちょっと待って下さい? なぜスレッドの話をするのですか? イベントループは web-scaleプログラミング を行うための 手段 だったのではない…