参考文献
[1] 蔡自兴.机器人学.北京清华大学出版社,2000年 [2] 邵忍平.机械系统动力学.机械工业出版社,2005年 [3] 张劲夫,秦卫阳.高等动力学.科学出版社,2004年
[4] 船仓一郎(日).机器人控制电子学.科学出版社,2004年5月
[5] 温熙森,邱静,陶俊勇.机电系统分析动力学及其应用.机械出版社,2003年 [6] M.米克尔(西德).汽车动力学.机械工业出版社,1971年8月 [7] 张洪欣.汽车系统动力学.同济大学出版社,1996年12月
[8] 刘延柱,洪嘉振,杨海兴.多刚体系统动力学.,北京:高等教育出版社,1989年 [9] 王振发.分析力学.北京:科学出版社,2002年
[10] 贾书惠.刚体动力学.北京:高等教育出版社,1987年
[11] 张景绘.动力学系统建模.北京:国防工业出版社,2000年2月 [12] 张策.机械动力学.北京:高等教育出版社,2000年4月
[13] 王铎,赵经文.理论力学.北京:高等教育出版社,2001年6月
[14] 杨延力.机械系统基本理论—结构学·运动学·动力学.北京:机械工业出版社,1996年 [15] 丘维声.高等代数.北京:高等教育出版社,1996年
[16] 郑文纬,昊克坚.机械原理.北京:高等教育出版社,2001年 [17] 濮良贵,纪名刚.机械设计.北京:高等教育出版社,2003年
[18] B.保罗(美).机构运动学与动力学.上海科学技术出版社,1989年1月
附录
1. 红外线遥控发送器电路元件清单 品名 规格,型号 数量 PIC微控制器 PIC16F84A-20 1 三引脚稳压器 78L05 1 红外线LED TLN110 1 石英震荡器 10MHz 1 陶瓷电容器 20pF 2 碳膜点阻 200Ω,1/4W 3 积层电容器 0.1μF 1 电解电容器 47μF,16V 2 拨动开关 3P 1 按扭开关 小型 5 IC插槽 18条引脚 1 印刷电路板 45mm×70mm 1 垫片 15mm 4 电池开关 006P用 1 电池 006P,9V 1
18
2. 遥控越野小车接收侧电路元器件清单 品名 PIC微控制器 电机驱动IC 三引脚稳压器 红外线接收模块 石英震荡器 碳膜点阻 陶瓷电容器 陶瓷电容器 积层电容器 电解电容器 拨动开关 IC插槽 印刷电路板 垫片 制作基本套件 电池按扭 电池盒 电池 电池 规格,型号 PIC16F84A-20 TA7257P 78L05 TFK-4 数量 1 2 1 1 1 4 2 1 1 2 1 1 1 4 1 1 1 1 2 10MHz 100Ω,1/4W 20pF 0.1μF 0.1μF 47μF,16V 2P 18条引脚 45mm×70mm 15mm 选购模型 006P用 5号×2 006P,9V 5号
3. 红外线发送器源程序 ;红外线发送源程序
;******************************************************************************LIST P=PIC16F84A ;指定所使用的PIC
INCLUDE “P16F84A.INC ;指定读取设定文件
;****************************************************************************** LEDOFF EQU 0FFH ;设定LED熄灭数据 LEDON EQU 00H ;设定LED点亮数据 CNT1 EQU 0CH ;定时器1的技术变量 CNT2 EQU 0DH ;定时器2的技术变量 CNT3 EQU 0EH ;定时器3的技术变量 WWW EQU 0FH ;载波的计数变量
;***************************************************************************** ORG 0 ;程序存储起始地址
BSF STATUS,RPO ;选择存储单元第1列
CLRF TRISA ;将端口A全部设定为输出模式 MOVLW 0FFH ;端口B设定用数据
MOVWF TRISB ;将端口B全部设定为输入模式 BCF OPTION_REG,7 ;端口B的上拉电阻有效 BCF STATUS,RPO ;选择存储单元第0列
19
MOVLW LEDOFF ;将熄灯数据置入W寄存器 MOVWF PORTA ;向端口A输出熄灯数据
;读取按扭数据****************************************************************** REPEAT BTFSS PORTB,4 ;检查SW4
GOTO MAE ;若为0(ON)则跳转至前进 BTFSS PORTB,3 ;检查SW3
GOTO MIGI ;若为0(ON)则跳转至右转 BTFSS PORTB,0 ;检查SW0
GOTO USHIRO ;若为0(ON)则跳转至后退 BTFSS PORTB,2 ;检查SW2
GOTO HIDARI ;若为0(ON)则跳转至左转 BTFSS PORTB,1 ;检查SW1
GOTO TEISHI ;若为0(ON)则跳转至停止 GOTO REPEAT ;重复
;发送各个按扭的数据8位(1+ABCD+10101)****************************************** MAE CALL B_1 ;开始位1
CALL B_1 ;数据4位B1010 CALL B_0 CALL B_1 CALL B_0
CALL B_1 ;停止位10101 CALL B_0 CALL B_1 CALL B_0 CALL B_1
CALL TIMER3 ;延时 CALL TIMER3 GOTO REPEAT
MIGI CALL B_1 ;开始位1
CALL B_0 ;数据4位B0010 CALL B_0 CALL B_1 CALL B_0
CALL B_1 ;停止位10101 CALL B_0 CALL B_1 CALL B_0 CALL B_1
20
CALL TIMER3 ;延时 CALL TIMER3 GOTO REPEAT
USHIRO CALL B_1 ;开始位1
CALL B_0 ;数据4位B0101 CALL B_1 CALL B_0 CALL B_1
CALL B_1 ; CALL B_0 CALL B_1 CALL B_0 CALL B_1
CALL TIMER3 ; CALL TIMER3 GOTO REPEAT
HIDARI CALL B_1 ; CALL B_1 ; CALL B_0 CALL B_0 CALL B_0
CALL B_1 ; CALL B_0 CALL B_1 CALL B_0 CALL B_1
CALL TIMER3 ; CALL TIMER3 GOTO REPEAT
TEISHI CALL B_1 ; CALL B_0 ; CALL B_0 CALL B_0 CALL B_0
CALL B_1 ; CALL B_0 CALL B_1 CALL B_0
停止位10101 延时 开始位1
数据4位B1000 停止位10101 延时 开始位1
数据4位B0000 停止位10101 21
CALL B_1
CALL TIMER3 ;延时 CALL TIMER3 GOTO REPEAT
;发送数据0******************************************************************** B_0 MOVLW D’50’ ;12?50?600?S
MOVWF WWW
MOVLW LEDOFF ;将熄灯数据置入W寄存器 MOVWF PORTA ;向端口A输出熄灯数据 L0 CALL TIMER1 DECFSZ WWW,1 GOTO LO RETURN
;发送数据1******************************************************************** B_1 MOVLW D’25’ ;12?25?2?600?S
MOVWF WWW
L1 MOVLW LEDON ; 将点亮数据置入W寄存器 MOVWF PORTA ; 向端口A输出点亮数据 CALL TIMER1
MOVLW LEDOFF ; 将熄灯数据置入W寄存器 MOVWF PORTA ; 向端口A输出熄灯数据 CALL TIMER1 DECFSZ WWW,1 GOTO L1 RETURN
:时间子程序******************************************************************** TIMER1 MOVLW D’6’ ;12μs定时器子程序 MOVWF CNT1 LOOP1 NOP NOP
DECFSZ CNT1,1 GOTO LOOP1 RETURN
TIMER2 MOVLW D’62’ ;0.1ms定时器子程序 MOVWF CNT2
22
LOOP2 NOP
DECFSZ CNT2,1 GOTO LOOP2 RETURN
TIMER3 MOVLW D’100’ ;10ms定时器子程序 MOVWF CNT3 LOOP3 NOP
CALL TIMER2 DECFSZ CNT3,1 GOTO LOOP3 RETURN
END ;
程序结束 23