This manual, as well as the software described in it, is furnished under license and may be
used or copied only in accordance with the terms of such license. The content of this manual is
furnished for informational use only, is subject to change without notice and should not be
construed as a commitment by Moog Inc., Animatics. Moog Inc., Animatics assumes no
responsibility or liability for any errors or inaccuracies that may appear herein.
Except as permitted by such license, no part of this publication may be reproduced, stored in a
retrieval system or transmitted, in any form or by any means, electronic, mechanical,
recording, or otherwise, without the prior written permission of Moog Inc., Animatics.
The programs and code samples in this manual are provided for example purposes only. It is
the user's responsibility to decide if a particular code sample or program applies to the
application being developed and to adjust the values to fit that application.
Moog Animatics and the Moog Animatics logo, SmartMotor and the SmartMotor logo,
Combitronic and the Combitronic logo, and SMI are all trademarks of Moog Inc., Animatics.
Other trademarks are the property of their respective owners.
Please let us know if you find any errors or omissions in this manual so that we can improve it
for future readers. Such notifications should contain the words "Developer's Guide" in the
subject line and be sent by e-mail to: animatics_marcom@moog.com. Thank you in advance
for your contribution.
Contact Us:
Americas - West
Moog Animatics
2581 Leghorn Street
Mountain View, CA 94043
USA
Tel: 1 650-960-4215Tel: 1 610-328-4000 x3999
Support: 1 888-356-0357
Website: www.animatics.com
Email: animatics_sales@moog.com
Americas - East
Moog Animatics
750 West Sproul Road
Springfield, PA 19064
USA
Fax: 1 610-605-6216
Table Of Contents
Introduction27
Overview28
Combitronic Support28
Communication Lockup Wizard30
Safety Information30
Safety Symbols30
Other Safety Considerations31
Motor Sizing31
Environmental Considerations31
Machine Safety31
Documentation and Training32
Additional Equipment and Considerations33
Safety Information Resources33
Additional Documents34
Related Guides34
Other Documents34
Additional Resources35
Part 1: Programming the SmartMotor36
Beginning Programming47
Setting the Motor Firmware Version48
Setting the Default Firmware Version48
Checking the Default Firmware Version49
Opening the SMIWindow (Program Editor)49
Understanding the Program Requirements50
Creating a "Hello World" Program51
Entering the Program in the SMI Editor51
Adding Comments to the Code52
Checking the Program Syntax52
Saving the Program52
Downloading a Program to the SmartMotor52
Syntax Checking, Compiling and Downloading the Program53
Additional Notes on Downloaded Programs53
Running a Downloaded Program54
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 3 of 909
Using the Program Download Window55
Using the Terminal Window and Run Program Button55
Using the RUN Command in the Terminal Window55
Creating a Simple Motion Program56
SMISoftware Features57
Introduction58
Menu Bar58
Toolbar59
Configuration Window61
Terminal Window63
Initiating Motion from the Terminal Window65
Information Window65
Program Editor66
Motor View68
SMI Trace Functions70
Monitor Window73
Serial Data Analyzer75
Chart View76
Chart View Example77
Macros80
Tuner82
SMIOptions86
SMIHelp87
Context-Sensitive Help Using F187
Context-Sensitive Help Using the Mouse87
Help Buttons87
Hover Help87
Table of Contents87
Projects88
SmartMotor Playground89
Opening the SmartMotor Playground90
Moving the Motor91
Communication Details93
Introduction95
Connecting to a Host96
Daisy Chaining Multiple D-Style SmartMotors over RS-23297
ADDR=formula98
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Should I choose Source Counts or Intermediate Counts?157
Should I choose Variable or Fixed cam?157
Electronic Camming Notes and Best Practices159
Examples161
Electronic Gearing and Camming over CANopen161
Electronic Camming Commands162
CTE(table)162
CTA(points,seglen[,location])162
CTW(pos[,seglen][,user])162
MCE(arg)163
MCW(table,point)163
RCP164
RCTT164
MC164
MCMUL=formula164
MCDIV=formula164
O(arg)=formula164
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 8 of 909
OSH(arg)=formula164
Cam Example Program165
Mode Switch Example168
Position Counters170
Modulo Position171
Modulo Position Commands171
Dual Trajectories172
Commands That Read Trajectory Information174
Dual Trajectory Example Program175
Synchronized Motion175
Synchronized-Target Commands175
PTS(), PRTS()175
VTS=formula176
ADTS=formula, ATS=formula, DTS=formula177
PTSS(), PRTSS()177
A Note About PTS and PTSS177
Other Synchronized-Motion Commands178
GS178
TSWAIT179
Program Flow Details181
Introduction182
Flow Commands182
RUN183
RUN?183
GOTO#, GOTO(label), C#183
GOSUB#, GOSUB(label), RETURN184
IF, ENDIF184
ELSE, ELSEIF185
WHILE, LOOP186
SWITCH, CASE, DEFAULT, BREAK, ENDS186
TWAIT187
WAIT=formula187
STACK187
END188
Program Flow Examples189
IF, ELSEIF, ELSE, ENDIF Examples189
WHILE, LOOPExamples189
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 9 of 909
GOTO(), GOSUB() Examples190
SWITCH, CASE, BREAK, ENDS Examples191
Interrupt Programming192
ITR(), ITRE, ITRD, EITR(), DITR(), RETURNI192
TMR(timer,time)194
Variables and Math195
Introduction196
Variable Commands196
EPTR=formula196
VST(variable,number)196
VLD(variable,number)197
Math Expressions197
Math Operations197
Logical Operations197
Integer Operations197
Floating Point Functions197
Math OperationDetails and Examples198
Array Variables198
Array Variable Examples199
Error and Fault Handling Details200
Motion and Motor Faults201
Overview201
Drive Stage Indications and Faults201
Fault Bits201
Error Handling202
Example Fault-Handler Code202
PAUSE203
RESUME203
Limits and Fault Handling204
Position Error Limits204
dE/dt Limits204
Velocity Limits204
Hardware Limits204
Software Limits205
Fault Handling205
Monitoring the SmartMotor Status206
System Status208
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 10 of 909
Introduction209
Retrieving and Manipulating Status Words/Bits209
System and Motor Status Bits209
Reset Error Flags211
System Status Examples211
Timer Status Bits212
Interrupt Status Bits212
I/O Status213
User Status Bits213
Multiple Trajectory Support Status Bits214
Cam Status Bits215
Interpolation Status Bits216
Motion Mode Status216
RMODE, RMODE(arg)216
I/OControl Details217
I/O Port Hardware218
I/O Connections Example (D-Style Motors)219
I/O Voltage Spikes219
Discrete Input and Output Commands220
Discrete Input Commands220
Discrete Output Commands220
Output Condition and Fault Status Commands221
Output Condition Commands221
Output Fault Status Reports221
General-Use Input Configuration221
Multiple I/OFunctions Example222
Analog Functions of I/O Ports223
5 Volt Push-Pull I/O Analog Functions (D-Style Motors)223
24 Volt I/O Analog Functions (D-Style AD1 Option Motors, M-Style Motors)223
Special Functions of I/OPorts224
Class 5 D-Style Motors: Special Functions of I/O Ports225
I/O Ports 0 and 1 – External Encoder Function Commands225
I/O Ports 2 and 3 – Travel Limit Inputs225
I/O Ports 4 and 5 – Communications225
I/O Port 6 – Go Command, Encoder Index Capture Input226
Class 5 M-Style Motors: Special Functions of I/O Ports227
COM Port Pins 4, 5, 6, and 8 – A-quad-B or Step-and-Direction Modes227
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 11 of 909
I/O Ports 2 and 3 – Travel Limit Inputs227
I/O Port 5 – Encoder Index Capture Input227
I/O Port 6 – Go Command228
Class 6 M-Style Motors: Special Functions of I/O Ports229
COM Port Pins 4, 5, 6, and 8 – A-quad-B or Step-and-Direction Modes229
I/O Ports 2 and 3 – Travel Limit Inputs229
I/O Port 4 and 5 – Encoder Index Capture Input229
I/O Port 6 – Go Command230
I/O Brake Output Commands230
I²C Expansion (D-Style Motors)230
Tuning and PIDControl231
Introduction232
Understanding the PID Control232
Tuning the PID Control233
Using F233
Setting KP234
Setting KD234
Setting KI and KL234
Setting EL=formula235
Other PID Tuning Parameters235
KG=formula235
KV=formula235
KA=formula236
Current Limit Control237
AMPS=formula237
Part 2: SmartMotor Command Reference238
(Single Space Character)240
a...z241
aa...zz241
aaa...zzz241
Ra...Rz241
Raa...Rzz241
Raaa...Rzzz241
ab[index]=formula245
Rab[index]245
ABS(value)248
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 12 of 909
RABS(value)248
AC250
RAC250
ACOS(value)253
RACOS(value)253
ADDR=formula255
RADDR255
ADT=formula257
ADTS=formula259
af[index]=formula261
Raf[index]261
Ai(arg)264
Aij(arg)266
Aj(arg)268
Aji(arg)270
al[index]=formula272
Ral[index]272
AMPS=formula275
RAMPS275
ASIN(value)278
RASIN(value)278
AT=formula280
RAT280
ATAN(value)282
RATAN(value)282
ATOF(index)284
RATOF(index)284
ATS=formula286
aw[index]=formula288
Raw[index]288
B(word,bit)291
RB(word,bit)291
Ba295
RBa295
BAUD(channel)=formula297
RBAUD(channel)297
Be299
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 13 of 909
RBe299
Bh301
RBh301
Bi(enc)304
RBi(enc)304
Bj(enc)307
RBj(enc)307
Bk310
RBk310
Bl311
RBl311
Bls313
RBls313
Bm315
RBm315
Bms317
RBms317
Bo319
RBo319
Bp320
RBp320
Bps322
RBps322
Br324
RBr324
BREAK326
BRKENG328
BRKRLS330
BRKSRV332
BRKTRJ334
Brs336
RBrs336
Bs338
RBs338
Bt340
RBt340
Bv342
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 14 of 909
RBv342
Bw344
RBw344
Bx(enc)346
RBx(enc)346
C{number}348
CADDR=formula350
RCADDR350
CAN, CAN(arg)352
RCAN, RCAN(arg)352
CANCTL(function,value)354
CASE formula355
CBAUD=formula358
RCBAUD358
CCHN(type,channel)360
CHN(channel)361
RCHN(channel)361
CLK=formula363
RCLK363
COMCTL(function,value)364
COS(value)366
RCOS(value)366
CP368
RCP368
CTA(points,seglen[,location])370
CTE(table)372
CTR(enc)374
RCTR(enc)374
CTT376
RCTT376
CTW(pos[,seglen][,user])377
DEA380
RDEA380
DEFAULT382
DEL=formula384
RDEL384
DELM(arg)386
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 15 of 909
DFS(value)387
RDFS(value)387
DITR(int)388
DT=formula390
RDT390
DTS=formula392
EA394
REA394
ECHO396
ECHO0398
ECHO1399
ECHO_OFF400
ECHO_OFF0401
ECHO_OFF1402
ECS(counts)403
EIGN(...)405
EILN408
EILP410
EIRE412
EIRI414
EISM(6)416
EITR(int)417
EL=formula419
REL419
ELSE421
ELSEIF formula423
ENC0425
ENC1426
ENCCTL(function,value)428
ENCD(in_out)430
END431
ENDIF433
ENDS435
EOBK(IO)437
EOIDX(number)439
EPTR=formula440
REPTR440
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 16 of 909
ERRC441
RERRC441
ERRW443
RERRW443
ETH(arg)444
RETH(arg)444
ETHCTL(function,value)445
F446
FABS(value)448
RFABS(value)448
FSA(cause,action)450
FSQRT(value)452
RFSQRT(value)452
FW454
RFW454
G456
GETCHR459
RGETCHR459
GETCHR1461
RGETCHR1461
GOSUB(label)463
GOTO(label)465
GS467
HEX(index)469
RHEX(index)469
I(enc)471
RI(enc)471
IDENT=formula473
RIDENT473
IF formula475
IN(...)478
RIN(...)478
INA(...)481
RINA(...)481
IPCTL(function,"string")484
ITR(Int#,StatusWord,Bit#,BitState,Label#)486
ITRD489
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 17 of 909
ITRE491
J(enc)493
RJ(enc)493
KA=formula495
RKA495
KD=formula497
RKD497
KG=formula499
RKG499
KI=formula501
RKI501
KII=formula503
RKII503
KL=formula504
RKL504
KP=formula506
RKP506
KPI=formula508
RKPI508
KS=formula509
RKS509
KV=formula511
RKV511
LEN513
RLEN513
LEN1514
RLEN1514
LFS(value)516
RLFS(value)516
LOAD518
LOCKP521
LOOP522
MC524
MCDIV=formula527
RMCDIV527
MCE(arg)528
MCMUL=formula530
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 18 of 909
RMCMUL530
MCW(table,point)532
MDB534
MDC536
MDE538
MDH540
MDHV542
MDS544
MDT546
MF0548
MFA(distance[,m/s])550
MFCTP(arg1,arg2)553
MFD(distance[,m/s])555
MFDIV=formula558
MFH(distance[,m/s])560
MFHTP=formula562
MFL(distance[,m/s])564
MFLTP=formula566
MFMUL=formula568
MFR570
MFSDC(distance,mode)573
MFSLEW(distance[,m/s])575
MINV(arg)577
MODE579
RMODE579
MP582
MS0585
MSR587
MT589
MTB591
MV593
NMT595
N/A595
O=formula, O(trj#)=formula597
OC(...)599
ROC(...)599
OCHN(...)601
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 19 of 909
OF(...)603
ROF(...)603
OFF605
OR(value)607
OS(...)609
OSH=formula, OSH(trj#)=formula611
OUT(...)=formula613
PA615
RPA615
PAUSE617
PC, PC(axis)619
RPC, RPC(axis)619
PI622
RPI622
PID#623
PMA626
RPMA626
PML=formula628
RPML628
PMT=formula630
RPMT630
PRA632
RPRA632
PRC635
RPRC635
PRINT(...)638
PRINT0(...)642
PRINT1(...)646
PRINT8(...)649
PRT=formula652
RPRT652
PRTS(...)654
PRTSS(...)656
PT=formula658
RPT658
PTS(...)660
PTSD663
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 20 of 909
RPTSD663
PTSS(...)664
PTST666
RPTST666
RANDOM=formula667
RRANDOM667
RCKS669
RES670
RRES670
RESUME672
RETURN674
RETURNI676
RSP678
RSP1680
RSP5681
RUN682
RUN?684
S (as command)686
SADDR#688
SAMP690
RSAMP690
SDORD(...)692
RSDORD692
SDOWR(...)694
SILENT696
SILENT1698
SIN(value)700
RSIN(value)700
SLD702
SLE704
SLEEP706
SLEEP1708
SLM(mode)710
RSLM710
SLN=formula712
RSLN712
SLP=formula714
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 21 of 909
RSLP714
SNAME("string")716
SP2717
RSP2717
SQRT(value)718
RSQRT(value)718
SRC(enc_src)720
STACK722
STDOUT=formula725
SWITCH formula727
T=formula730
Read/write730
TALK732
TALK1734
TAN(value)736
RTAN(value)736
TEMP, TEMP(arg)738
RTEMP, RTEMP(arg)738
TH=formula740
RTH740
TMR(timer,time)743
RTMR(timer)743
TRQ745
RTRQ745
TS=formula747
RTS747
TSWAIT749
TWAIT(gen#)750
UIA752
RUIA752
UJA754
RUJA754
UO(...)=formula756
UP758
UPLOAD760
UR(...)762
US(...)764
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 22 of 909
USB(arg)766
RUSB766
VA768
RVA768
VAC(arg)771
VC776
RVC776
VL=formula778
RVL778
VLD(variable,number)780
VST(variable,number)784
VT=formula788
RVT788
VTS=formula791
W(word)793
RW(word)793
WAIT=formula795
WAKE797
WAKE1799
WHILE formula801
X804
Z806
Z(word,bit)808
Za810
Ze811
Zh812
Zl813
Zls814
Zr815
Zrs816
Zs817
ZS818
Zv821
Zw822
Part 3: Example SmartMotor Programs823
Move Back and Forth824
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 23 of 909
Move Back and Forth with Watch824
Home Against a Hard Stop (Basic)825
Home Against a Hard Stop (Advanced)825
Home Against a Hard Stop (Two Motors)826
Home to Index Using Different Modes828
Maintain Velocity During Analog Drift829
Long-Term Storage of Variables830
Find Errors and Print Them830
Change Speed on Digital Input831
Pulse Output on a Given Position831
Stop Motion if Voltage Drops832
Camming - Variable Cam Example833
Camming - Fixed Cam with Input Variables834
Camming - Demo XYCircle836
Chevron Traverse & Takeup838
CAN Bus - Timed SDOPoll840
CAN Bus - I/OBlock with PDOPoll841
CAN Bus - Time Sync Follow Encoder844
Text Replacement in an SMI Program852
Appendix854
Motion Command Quick Reference856
Array Variable Memory Map858
ASCIICharacter Set860
Binary Data861
Command Error Codes864
Decoding the Error864
Finding the Error Source865
Glossary866
Math Operators873
Moment of Inertia874
Matching Motor to Load874
Improving the Moment of Inertia Ratio874
RCAN, RCHN and RMODEStatus875
RCAN Status Decoder875
RCHN Status Decoder875
Clearing Serial Port Errors876
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 24 of 909
RMODE Status Decoder876
Mode Status Example876
Scale Factor Calculation877
Sample Rates877
PID Sample Rate Command877
Encoder Resolution and the RES Parameter877
Native Velocity and Acceleration Units878
Velocity Calculations878
Acceleration Calculations878
Status Words879
Status Word: 0Primary Fault/Status Indicator879
Status Word: 1Index Registration and Software Travel Limits880
Status Word: 2Communications, Program and Memory880
Status Word: 3PID State, Brake, Move Generation Indicators881
Status Word: 4 Interrupt Timers881
Status Word: 5 Interrupt Status Indicators882
Status Word: 6 Drive Modes882
Status Word 7: Multiple Trajectory Support883
Status Word 8: Cam Support884
Status Word 10: RxPDO Arrival Notification884
Status Word 12: User Bits Word 0885
Status Word 13: User Bits Word 1885
Status Word: 16 On Board Local I/O Status: D-Style Motor886
Status Word: 16 On Board Local I/O Status: M-Style Motor886
Status Word: 17 Expanded I/O Status: D-Style AD1 Motor887
Torque Curves888
Understanding Torque Curves888
Peak Torque888
Continuous Torque888
Ambient Temperature Effects on Torque Curves and Motor Response:889
Supply Voltage Effects on Torque Curves and Motor Response:889
Example 1: Rotary Application890
Example 2: Linear Application890
Dyno Test Data vs. the Derated Torque Curve890
Proper Sizing and Loading of the SmartMotor891
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 25 of 909
Commands Listed Alphabetically893
Commands Listed by Function900
Communications Control901
Data Conversion902
EEPROM (Nonvolatile Memory)902
I/OControl902
Math Function903
Motion Control903
Program Access906
Program Execution and Flow Control906
Reset Commands907
System907
Variables908
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 26 of 909
Introduction
Introduction
Introduction
This chapter provides introductory reference material.
Overview28
Combitronic Support28
Communication Lockup Wizard30
Safety Information30
Additional Documents34
Additional Resources35
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 27 of 909
Introduction
Introduction: Overview
Overview
The SmartMotor™ Developer's Guide is designed to be used by system developers and
programmers when developing applications for the SmartMotor. Before using the
SmartMotor™ Developer's Guide, it is strongly recommended that you first read the
SmartMotor™ Installation & Startup Guide for your SmartMotor, which describes how to
install and start up the SmartMotor, and test initial communications with the motor. After that,
use this guide to learn about advanced SmartMotor features, how to develop SmartMotor
applications, and the details of each command.
Part One of this guide provides information on basic to advanced programming, along with
related information on key SMIsoftware features, communications, motion control, program
flow control, error and fault handling, and more.
Part Two of this guide lists all the SmartMotor commands in alphabetical order. Each
command is described in detail. Code snippets and examples are provided where applicable.
These are shown in a Courier font. Comments are included and separated with a single
quotation mark as they would be in your own programs.
NOTE: The programs and code samples in this manual are provided for example
purposes only. It is the user's responsibility to decide if a particular code sample or
program applies to the application being developed and to adjust the values to fit
that application.
Also, where appropriate, a Related Commands section is included, which is located at the end
of the command page. It is designed to guide you to other commands that offer similar
functionality, and ensure you are aware of every programming option the SmartMotor
provides to address your specific application requirements.
Part Three of this guide provides a library of useful example SmartMotor programs. These can
be used as "how to" examples for using a particular SmartMotor feature or solving a particular
application problem, or as starting points for your application.
NOTE: The programs and code samples in this manual are provided for example
purposes only. It is the user's responsibility to decide if a particular code sample or
program applies to the application being developed and to adjust the values to fit
that application.
The Appendix of this guide contains additional topics such as an array map, ASCII character
set, command error codes, and other information that is useful to have handy during
application development.
A quick-reference command list is also included at the end of this guide.
Combitronic Support
A large number of the commands provide Combitronic™ support. Combitronic is a protocol
that operates over a standard "CAN" (Controller Area Network) interface. It may coexist with
either CANopen or DeviceNet protocols at the same time. Unlike these common protocols,
however, Combitronic requires no single dedicated master to operate. Each Integrated Servo
connected to the same network communicates on an equal footing, sharing all information,
and therefore, sharing all processing resources. For more details on Combitronic features,
see Combitronic Communications on page 111, and also see the overview on the Moog
Animatics website at:
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 28 of 909
Introduction
Introduction: Combitronic Support
For applicable commands, a table row titled "COMBITRONIC:" provides the Combitronic
command syntax for addressing a specific SmartMotor in the network. Those commands also
display the Combitronic logo () at the top of their reference pages.
Combitronic Logo Location
COMBITRONIC: Table Row
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 29 of 909
Introduction
Introduction: Communication Lockup Wizard
Communication Lockup Wizard
Improper use of some commands, like Z and OCHN, can lock you out of the motor and
prevent further communication. If you are unable to communicate with the SmartMotor, you
may be able to recover communications using the Communication Lockup Wizard, which is on
the SMI software Communications menu (see the following figure). This tool sends an "E"
character to the motor at startup, which prevents the motor from running its program. For
more details on the Communication Lockup Wizard, see the SMI software online help, which is
accessed by pressing the F1 key or selecting Help from the SMI software main menu.
Communication Menu - Communication Lockup Wizard
Safety Information
This section describes the safety symbols and other safety information.
Safety Symbols
The manual may use one or more of the following safety symbols:
WARNING: This symbol indicates a potentially nonlethal mechanical hazard,
where failure to follow the instructions could result in serious injury to the
operator or major damage to the equipment.
CAUTION: This symbol indicates a potentially minor hazard, where failure to
follow the instructions could result in slight injury to the operator or minor
damage to the equipment.
NOTE: Notes are used to emphasize non-safety concepts or related information.
Moog Animatics SmartMotor™ Developer's Guide,Rev. L
Page 30 of 909
Loading...
+ 879 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.